本文描述的是在CentOS 6.x下,更改MySQL的datadir路径的办法。实测MySQL 5.5和MySQL 5.7均适用。以下是具体操作步骤:
1. 停止MySQL服务
service mysqld stop(有些版本MySQL是service mysql stop)
2. 创建新的数据目录
mkdir /data/newpath -p
3. 拷贝数据目录到新目录(参数不要丢了,不然拷贝的路径用户权限会错误)
cp -R -p /var/lib/mysql /data/newpath
4. 编辑/etc/my.cnf。如果没有,可以从/usr/share/mysql下拷贝一个过来修改。
修改[mysqld]下面的datadir(如果没有,直接手动敲入)
datadir=/data/newpath/mysql/
修改[client]和[mysqld]下面的socket,将其值修改为
socket=/data/newpath/mysql/mysql.sock
5. 修改/etc/init.d/mysqld文件(有些版本MySQL是mysql文件)
找到/var/lib/mysql,将其替换为新路径/data/newpath/mysql
6. SELinux赋权
chcon -R -t mysqld_db_t /data/newpath/mysql/
7. 启动MySQL
service mysqld start(有些版本MySQL是service mysql start)