MySQL 及 MariaDB 在 Redhat, CentOS, Fedora, Debian 及 Ubuntu 的環境下, 預設資料庫儲存目錄是 /var/lib/mysql, 想要更改資料庫儲存目錄的儲存路徑, 可以用以下步驟。
1. 停止 MySQL / MariaDB:
# systemctl stop mysqld
或者:
# systemctl stop mariadb
或者:
# /etc/init.d/mysql stop
2. 建立新的 MySQL 資料庫儲存目錄, 以及設定權限, 以下會以 /home/db 為例子:
# mkdir /home/db
# chmod 700 /home/db
# chown mysql.mysql /home/db
# chmod 700 /home/db
# chown mysql.mysql /home/db
3. 把 /var/lib/mysql 目錄完整複製到 /home/db 下, 連同 owner 及權限設定一同複製:
# cp -rp /var/lib/mysql/* /home/db/
4. 開啟 MySQL 及 MariaDB 的設定檔, Redhat, CentOS 及 Fedora 的位置是 /etc/my.cnf; Debian 及 Ubuntu 的位置是 /etc/mysql/my.cnf:
# vi /etc/my.cnf
在 [mysqld] 段落加入:
datadir = /home/db
在 [mysqld] 段落, 將 mysql.sock 的路徑修改成:
socket = /home/db/mysql.sock
在 [client] 段落, 將 mysql.sock 的路徑修改成:
socket = /home/db/mysql.sock
儲存檔案後離開。
5. 啟動 MySQL / MariaDB 伺服器:
# systemctl start mysqld
或者:
# systemctl start mariadb
或者:
# /etc/init.d/mysql start