华为云Ubuntu16.04下修改MySQL数据的默认存储位置

1.首先第一步当然是down掉MySQL了:

/etc/init.d/mysql stop

2.接着创建新的数据库路径:

mkdir -p /mydata/mysql

其中,/mydata是我在云服务器上加的一个数据盘,已经挂载到 /mydata 上去了。我想把所有的MySQL的数据都存到这个数据盘,而不是存到云服务器自带的系统盘。

3.复制MySQL原有的数据,注意,MySQL的原始数据存在/var/lib/mysql/下。

cp -R /var/lib/mysql/* /mydata/mysql

4.注意一定要修改权限,因为/var/lib/mysql 文件夹的属性就是如下的:

chown -R mysql:mysql /mydata/mysql

5.修改配置文件夹

这一步网上都说是修改 /etc/mysql/my.cnf 文件,可是我vim进去发现根本没有 datadir 变量,查了很多资料都没找到,然后自己捣鼓发现 /etc/mysql 下有个 mysql.conf.d 文件夹,下面有 mysqld.cnf 文件,进去一看,果然 datadir变量在里面!所以正确的操作应该是:
vim /etc/mysql/mysql.conf.d/mysqld.cnf

将 [mysqld] 组下的 datadir改为:
datadir = /mydata/mysql

但是我也不知道会不会是在华为云的源下载MySQL配置方式不同。。。。

6.修改启动文件

vim /etc/apparmor.d/usr.sbin.mysqld

/var/lib/mysql r  
/var/lib/mysql/** rwk  
修改成  
/mydata/mysql r  
/mydata/mysql/** rwk,   

6.重启服务

/etc/init.d/apparmor restart
/etc/init.d/mysql restart

原文出处:https://blog.csdn.net/prliebtsy/article/details/79995620

猜你喜欢

转载自blog.csdn.net/xu622/article/details/81264057