1.确认mysql 数据存放位置
mysql -u root -p
输入密码后进入命令好操作
show variables like '%dir%';
可以看到我们的数据库存放在
datadir = /var/lib/mysql
然后关闭mysql 服务
service mysql stop
2.迁移数据
这里使用mv命令之前迁移,如果谨慎一点可以先用cp命令拷贝下
mv /var/lib/mysql /data/mysql
3.修改配置文件
sudo vim /etc/mysql/my.cnf
将其中的datadir改为
datair = /data/mysql
保存退出
然后
sudo vim /etc/apparmor.d/usr.sbin.mysqld
将其中
/var/lib/mysql/ r,
/var/lib/mysql/** rwk,
两行权限声明,可以在前面加上#好注释掉。然后对照格式,加入新路径的权限声明:
/data/mysql/ r,
/data/mysql/** rwk,
最后
sudo vim /etc/apparmor.d/abstractions/mysql
将其中的sock地址改为
/data/mysql/mysql.sock rw
保存退出
4.修改文件权限
sudo chmod 755 /data 【见补充】
5.重启数据库
配置文件修改成功后就可以重启数据库,重启数据库之前需要先重新载入apparmor配置文件,使用下面命令重新载入:
sudo /etc/init.d/apparmor restart
重载成功就可以使用下面命令启动数据库:
sudo /etc/init.d/mysql start
作者:雪后初暖阳丶林深处
链接:https://www.jianshu.com/p/a483f5eba6bf
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
-----------------------------------------------------------------------
补充:
/data/mysql下所有文件权限改成777(可755),用户改为mysql:
cd /data
sudo chmod -R 777 mysql
sudo chown -R mysql mysql
如果启动不了可查看/var/log/mysql/error.log
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)