mysql 数据转存,硬盘空间不够了倒腾了

2016 年 10 月 10 日
 gkiwi
事情有点特殊。朋友阿里服务器到期(还有 5 天),不想续费了,希望我把上面的 mysql 数据转存一下(打算用百度云,他也没啥服务器),留着后面用;
数据是他买了别人的,所以丢掉不忍;

现在情况:服务器 150G 硬盘, mysql data 大小约 80G ,剩余大概 40G 可以用;

其中单 ibdata1 就有 79G ,参照网上一些瘦身方法,我想着用 mysqldump 导出,然后 gz 压缩一下,然后拉到我的本地再传到百度云上。

但是 ibdata1, db.sql, db.sql.tar.gz 这三者的大小不知道大概有多少。

结果第一步 mysqldump 导出了大半天,我上去一看,硬盘刚刚用光了。

直接压缩 mysql data 文件夹可行么?求个合适的方案,谢谢
3732 次点击
所在节点    问与答
18 条回复
zpvip
2016 年 10 月 10 日
有没有可能先一个一个地把表转成 MyISAM ,然后 scp MyISAM 文件
47jm9ozp
2016 年 10 月 10 日
直接打包 /var/lib/mysql ,或者直接备份这个目录(
pubby
2016 年 10 月 10 日
光用 mysqldump 就够了 ,直接在管道中压缩
mysqldump -u<user> -p<password> -h <host> <database> | gzip -c -3 > db.sql.gz

mysql 目录文件打包不需要吧,遇到不同 mysql 版本不好弄的。
ifishman
2016 年 10 月 10 日
何不直接上传到百度云,是因为水管太小了么
Mac
2016 年 10 月 10 日
1.直接打包 data 目录。
2.远程用工具备份,我不知道阿里云支不支持 MYSQL 用户的 HOST 是来自%的
shlabc
2016 年 10 月 10 日
pubby
2016 年 10 月 10 日
如果磁盘剩余还是不够,保证网络稳定的情况下可以直接导出到本地机器

ssh user@host ' mysqldump -u<user> -p<password> -h <host> <database> | gzip -c -3 ' > db.sql.gz
gkiwi
2016 年 10 月 10 日
@zpvip 已经列在目录单子上,备选方案;
@ooxxcc @Mac 有尝试这个,但是压缩比不晓得,还在观察,速度倒是不错;
@pubby @shlabc 没有用到--quick 这个参数,之前我看了几个推荐的脚本,有些有用到这个参数,我一会尝试下,这个应该是最理想的姿势;

@ifishman 因为买的数据,当时对方有同步数据的工具,直接是同步到 mysql 中的~
ifishman
2016 年 10 月 10 日
@gkiwi 我的意思是,直接用百度云的 linux 备份脚本备份整个数据文件夹到百度云上
gkiwi
2016 年 10 月 10 日
@ifishman 谢谢,晓得你的意思了。。这个等我压缩好了再用,**真**小水管
ifishman
2016 年 10 月 10 日
既然不能一次性压缩完,何不找找类似 winrar 的分卷压缩解决方案,压缩一个上传一个删除一个
@gkiwi
ifishman
2016 年 10 月 10 日
gkiwi
2016 年 10 月 10 日
@ifishman 现在用了两种方式进行压缩,一种直接压缩文件夹的出了一个 15G 的了已经,另外一个速度有点慢,一边导出一边压缩;感觉数据量应该会比 15G 这个小;

关于分割压缩,在管道中的数据,不晓得分割压缩是否可行,毕竟在在无法获得所有的所有数据之前,是否能够合理的分割压缩,不是太清楚这个。单纯的分割可以有。我晚点再看看结果
pubby
2016 年 10 月 10 日
@gkiwi 管道输出也可以分片的

.... | split -d -b 10G - db.sql.gz.part-


但是你这小水管的话,分了也没用,因为下载速度比你文件生成慢。
ebony0319
2016 年 10 月 10 日
压缩备份数据库的话大约是 12G 可以压缩为 1G 。
kn007
2016 年 10 月 10 日
停止运行。直接把目录拷贝走。
kn007
2016 年 10 月 10 日
或者一点一点备份
gkiwi
2016 年 10 月 12 日
@pubby 小水管 12G ,上传了大概 12 个小时吧,已经搞定了:) 谢谢


@ebony0319 我的是 80G=>15G ,还得看数据

@kn007 已经搞定:)

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://v2ex.ih06.com/t/311652

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX