当使用ampp里mysql磁盘满了,而该磁盘又无法清理时,可以采用如下方法处理:
当使用/opt/lampp/默认的存储数据目录在/opt/lampp/var/mysql/,当opt挂载的空间满了时,最初的想法是修改/opt/lampp/etc/my.cnf的数据目录到其他磁盘去,但是发现/opt/lampp/启动脚本里有些写死了该路径。
所以只能将/opt/lampp/var/mysql/数据copy到其他磁盘,然后软链接回来
1、 cp -ra /opt/lampp/var/mysql/ /usr/mysql/
2、修改目录名:
mv /opt/lampp/var/mysql/ /opt/lampp/var/mysql_old
3、软链接回来:
ln -s /usr/mysql/ /opt/lampp/var/
4、特别注意修改下权限,否则启动会报错(XAMPP: Couldn't start MySQL!):
chmod 777 -R /usr/mysql/
chown -R nobody.root /usr/mysql/
5、此时可以启动mysql了,用mysql命令可能可以进入,
但是如果你的磁盘空间已经是100%占用了,如果用程序连上去可能会收到这样的错误,这里是java:java.sql.SQLException: Got error 28 from storage engine
此时需要将空间腾出来,把 /opt/lampp/var/mysql_old目录移走到其他磁盘即可。