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