我的数据库文件位于/var/lib/mysql
哪个分区/dev/sda5
此分区已满(请参阅此处了解详情)
所以我要将数据库文件的位置从移动/var/lib/mysql
到/home/lib/mysql
移动此数据库文件的正确方法是什么?
我将执行以下步骤:
- 停止 http 服务器和 PHP
- 改变
datadir=/var/lib/mysql
成为datadir=/home/lib/mysql
/etc/my.cnf
- 将所有数据库文件移动到新位置
killall -9 mysql
然后 运行/etc/init.d/mysqld start
- 启动http服务器和PHP
对吗?如果我错了,请纠正我
添加:
目前,mysql 不会停止。参考这里:mysql 不会停止,mysqld_safe 出现在顶部
答案1
1-在移动文件(步骤 3)之前,您应该停止 mysql 服务器(步骤 4)。
2-您应该正常地停止它,kill -9
除非需要,否则不要使用它。
3-我认为您的意思是从步骤 5 开始。(我编辑了这个问题)。
4-您还需要检查文件的权限和所有权。
答案2
- 停止 http 服务器和 PHP
- 以 root 身份登录 mysql 并“刷新表”(如果刷新失败,您将需要修复一些表)
- 运行 killall -9 mysql
- 在 /etc/my.cnf 中将 datadir=/var/lib/mysql 更改为 datadir=/home/lib/mysql
- 将所有数据库文件移动到新位置
- 启动 mysql 服务器
- 检查表状态(从 phpmyadmin 或其他 GUI)
- 启动http服务器和PHP