- 准备工作
首先确认mysql 数据存放位置
mysql -u root -p
输入密码后进入命令好操作
show variables like '%dir%';
可以看到我们的数据库存放在
datadir = /var/lib/mysql
然后关闭mysql 服务
service mysql stop
- 迁移数据
这里使用mv命令之前迁移,如果谨慎一点可以先用cp命令拷贝下
mv /var/lib/mysql /data/mysql
- 修改配置文件
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
保存退出
- 修改文件权限
sudo chmod 755 /data - 重启数据库
配置文件修改成功后就可以重启数据库,重启数据库之前需要先重新载入apparmor配置文件,使用下面命令重新载入:
sudo /etc/init.d/apparmor restart
重载成功就可以使用下面命令启动数据库:
sudo /etc/init.d/mysql start