Thay đổi thư mục lưu trữ mặc định MariaDB trên Ubuntu

Thay đổi thư mục lưu trữ cơ sở dữ liệu sẽ giúp người dùng tăng dung lượng lưu trữ trong trường hợp ổ đĩa chứa hệ điều hành bị quá tải.

Đầu tiên ta sẽ tạo thư mục lưu trữ và phân quyền cho thư mục đó dưới quyền mysql:mysql bằng lệnh

$ sudo mkdir /home/mysql-data
$ sudo chown -R mysql:mysql /home/mysql-data

Tiếp đó xác định nơi lưu trữ cơ sở dữ liệu bằng lệnh

$ sudo mysql -u root -p -e "SELECT @@datadir;"
Kết quả
+-----------------+
| @@datadir       |
+-----------------+
| /var/lib/mysql/ |
+-----------------+

Tiếp đó để tránh dữ liệu bị lỗi ta cần tắt dịch vụ MariaDB đi (câu lệnh thứ nhất là tắt dịch vụ, câu lệnh thứ 2 là kiểm tra xem dịch vụ còn chạy không)

$ sudo systemctl stop mariadb
$ sudo systemctl is-active mariadb
Kết quả
inactive

Sau đó copy thư mục đang chứa các file cơ sở dữ liệu sang thư mục vừa tạo

Quảng cáo

Ủng hộ website

$ sudo cp -R -p /var/lib/mysql/* /home/mysql-data

Tiếp đến là chỉnh sửa file cấu hình của MySQL. Đầu tiên kiểm tra file này

$ sudo nano /etc/mysql/mariadb.conf.d/50-server.cnf

Thay đổi thông số của datadir như bên dưới (chủ yếu là thay đổi đường dẫn của của datadir thôi, những cái khác giữ nguyên)

[mysqld]
user                    = mysql
pid-file                = /run/mysqld/mysqld.pid
socket                  = /run/mysqld/mysqld.sock
port                    = 3306
basedir                 = /usr
datadir                 = /home/mysql-data
tmpdir                  = /tmp
lc-messages-dir         = /usr/share/mysql

Ấn Ctrl + O để lưu và Ctrl + X để thoát. Tiếp theo, để MariaDB bật lên không bị lỗi thì bạn cần tạo một file cấu hình “/etc/systemd/system/mariadb.service.d/override.conf” để tắt chức năng ProtectHome theo chính sách của Debian. Bạn tạo file sau bằng lệnh

$ sudo systemctl edit mariadb

Sau đó thêm đoạn code sau:

[Service]
# Prevent accessing /home, /root and /run/user
ProtectHome=false

Ấn Ctrl + O để lưu và Ctrl + X để thoát. Sau đó reload lại dịch vụ daemon

$ sudo systemctl daemon-reload

Cuối cùng bật lại dịch vụ MariaDB và tận hưởng thành quả

$ sudo systemctl start mariadb
$ sudo systemctl is-active mariadb
Kết quả:
active
$ sudo mysql -u root -p -e "SELECT @@datadir;"
Kết quả:
+------------------------+
| @@datadir              |
+------------------------+
| /home/mysql-data/      |
+------------------------+

Trên đây mình đã trình bày cách thay đổi đường dẫn mặc định của MariaDB. Bài viết sử dụng Ubuntu 20.4 và MariaDB 10.3. Chúc các bạn thành công

Add Comment