linux修改mysql存储目录
mysql默认在/var 目录,有时候主目录空间不够,这时候我们需要把mysql存储在其他地方。
1:停止mysql
2:打开mysql配置文件:my.cnf,我这里在/etc/my.cnf 注释掉datadir和socket,并改为新的目录地址。比如我这里在/data/part1/,那么配置
datadir=/data/part1/mysql socket=/data/part1/mysql/mysql.sock #这个也可以不用改,而只改数据目录
3:配置文件中原来的datadir=/var/lib/mysql,所以我们把这个目录复制过去。
cp -a /var/lib/mysql/ /data/part1/注意:一定要加 -a,否则目录权限不对。
如果没有加参数a,手动改权限即可,我这里的地址为:
# chown -R mysql /data/part1/mysql/
4:建立软连接
ln -s /data/part1/mysql/mysql.sock /var/lib/mysql/mysql.sock
5:启动mysl即可。
如果失败,那么你需要看一下apparmor这个破玩意儿,这东西限制了mysql的一些目录不能随意移动。
打开看一下:/etc/apparmor.d/usr.sbin.mysqld搜索一下:Allow data dir access
这里红线里面的就是被限制了,把这个复制一份,把新的目录加进去就OK了