1. 停止数据库服务
systemctl stop mysqld
2. 迁移目录
cd /var/lib/mysql
cp -rf ./* /home/mysql/data
cd /home
chown -R mysql:mysql mysql
3. 修改配置文件my.cnf
datadir=/home/mysql/data
socket=/home/mysql/data/mysql.sock
4. 启动mysql
systemctl start mysqld
查看:
mysql> show VARIABLES like 'datadir';
+---------------+-------------------+
| Variable_name | Value |
+---------------+-------------------+
| datadir | /home/mysql/data/ |
+---------------+-------------------+
1 row in set (0.00 sec)
5. 如果报错:
mysqld: File ‘./binlog.index‘ not found (OS errno 13 - Permission denied)
关掉selinux
临时,重启服务器失效
[root@localhost ~]# setenforce 0
永久, xu'y
vi /etc/selinux/config
修改: SELINUX=disabled
再次启动成功
6. 连接报错
Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock'
修改配置文件
增加
[mysql]
socket=/data/mysql/mysql.sock
网友评论