想要改变mysql数据存储路径的想法最初是在生产服务器上mysql的数据放到了系统盘上,导致系统盘满额,没有足够的内存交换空间而死机。
将mysql数据存储到其他目录下有两种方法,方法一修改my.cnf配置文件,不过经过笔者通过网上的配置资料尝试总是不成功,环境是在centos7下操作的。后来想到一个简单的方法,通过linux的软链接将实际数据放到另外的目录里面就可以了。
环境说明
操作系统是centos7
mysql是通过二进制包里面的rpm方式安装的。相当于全自动了。
方法
先关闭mysql
service mysqld stop
默认情况下,rpm安装好的mysql会将数据放置在/var/lib/mysql目录当中,我们像将数据迁移到/mnt/data目录当中在terminal当中输入:
mv /var/lib/mysql /mnt/data
mv命令会直接将/var/lib/mysql文件夹直接剪切到/mnt/data目录当中。
这时我们需要回到/var/lib目录当中,
cd /var/lib
在这个目录当中建立软链接。
ln -s /mnt/data/mysql /var/lib
软链接相当于windows里面创建目录快捷方式是一样的,这个时候你应该可以看到mysql文件夹回到了/var/lib目录当中,要进去查看一下mysql的路径是否和my.cnf一致。
这时候我们再启动mysql
service mysqld start
以上我们就将数据迁移到其他目录下,并且还没有修改和变更my.cnf文件。