我的编程空间,编程开发者的网络收藏夹
学习永远不晚

MySQL数据库空间用满时,巧用软链接转移。

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

MySQL数据库空间用满时,巧用软链接转移。

参考:​​http://www.webhostingtalk.com/showthread.php?t=1086919​

对于一些做SEO的人来说,/var/lib/mysql 和 /var/www 是两个占用空间的大户,下面以数据库为例,将/var/lib/mysql下的数据库移动到较大的/home下,并使用软链接将/home/mysql 链接到/var/lib/mysql,实现充分利用空间的目的。

在这些网站都不在使用的时候,停用mysql,apache

/etc/init.d/mysqld stop
/etc/init.d/httpd stop

使用rsync完整的将数据拷贝(-a archive mode归档模式 -v verbos显示详细 )

rsync -av /var/lib/mysql /home/

这个过程根据数据量的不同时间不同,数据很大的话建议使用screen

接下来看一下大小,如果以上命令都完全执行完的话,是不会出现什么问题的

du -sh /var/lib/mysql
du -sh /home/mysql

将旧的/var/lib/mysql移走,随便移到什么地方,实再不需要删掉也行

mv /var/lib/mysql /var/lib/mysql-bak

创建软链接

ln -s /home/mysql /var/lib/mysql

之后一定要再次确认上面的软链接链接到对的地方,如果不正确mysql一启动就麻烦了。

#######ubuntu用户注意 begin#######

如果使用ubuntu下apt-get安装的mysql版本,还需如下操作

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

将如下两行注释

/var/lib/mysql/ r,
/var/lib/mysql/** rwk,

变更为(可能是因为apparmor不支持软链接)

/home/mysql/ r,
/home/mysql/** rwk,

重启apparmor

/etc/init.d/apparmor restart

#######ubuntu用户注意 end#######

之后启动mysql,apache

/etc/init.d/mysqld start
/etc/init.d/httpd start

这样以后所有的mysql数据的位置就在/home/mysql里了。

另一种解决方案:不用软链接而直接将数据库转移到目录/mnt/sx_disk ;
rsync -av /var/lib/mysql /mnt/sx_disk/

之后在/etc/my.cnf中,将[mysqld]中的如下参数改为

[mysqld]
datadir=/mnt/sx_disk/mysql
socket=/mnt/sx_disk/mysql/mysql.sock

只这样还不行,会出现

ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)

另外需添加

[client]
port=3306
socket=/mnt/sx_disk/mysql/mysql.sock

这样数据库就存为了新的位置/mnt/sx_disk目录中。

如果同是ubuntu下mysql的话,也需要按上面的方式修改​​/etc/apparmor.d/usr.sbin.mysqld​​ ;

来源地址:https://blog.csdn.net/weixin_38920945/article/details/128483908

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

MySQL数据库空间用满时,巧用软链接转移。

下载Word文档到电脑,方便收藏和打印~

下载Word文档

编程热搜

目录