1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > MySQL 数据表备份导出 恢复导入操作实践

MySQL 数据表备份导出 恢复导入操作实践

时间:2022-05-11 08:42:12

相关推荐

MySQL 数据表备份导出 恢复导入操作实践

因为经常跑脚本的关系, 每次跑完数据之后,相关的测试服数据库表的数据都被跑乱了,重新跑脚本恢复回来速度也不快,所以尝试在跑脚本之前直接备份该表,然后跑完数据之后恢复的方式,应该会方便一点。所以实践一波。

使用mysql dump命令将指定备份表 备份到我的/home目录下

mysqldump -u xcf -h devdb -p xcf_mfarm ec_points_yearly_balance > ~/ec_points_yearly_balance__12_22.sql

然后去~/文件下看,已经能看到 一个.sql后缀的备份文件了。

现在我将整个表里的数据清空

truncate table ec_points_yearly_balance;

好现在确认里面没有数据了,我们来恢复该库数据:

mysql -u xcf -p -h devdb xcf_mfarm < ~/ec_points_yearly_balance__12_22.sql

好去数据库看看效果

mysql> select count(*) from ec_points_yearly_balance;

+----------+

| count(*) |

+----------+

| 0 |

+----------+

1 row in set (0.00 sec)

mysql> select * from ec_points_yearly_balance;

Empty set (0.00 sec)

mysql> select count(*) from ec_points_yearly_balance;

+----------+

| count(*) |

+----------+

| 1601671 |

+----------+

1 row in set (0.21 sec)

似乎效果还不错。

当然在超过百万级别的数据表导出的时候,我们还可以在导出的时候使用gzip压缩的方法让得到的文件稍微小几倍。

mysqldump -hdevdb -u xcf -p xcf_mfarm ec_points_yearly_balance | gzip > ec_points_yearly_balance_.sql.gz

可以看看压缩的效果

-rw-rw-r-- 1 piperck piperck 221M Dec 22 15:53 ec_points_yearly_balance__12_22.sql

-rw-rw-r-- 1 piperck piperck 13M Dec 22 16:28 ec_points_yearly_balance_.sql.gz

哇 这可差了快20倍!

那么还原也可以支持使用

gunzip < ec_points_yearly_balance_.sql.gz | mysql -hdevdb -uxcf -p xcf_mfarm

当然,对于通过gzip压缩还原来说,速度要比原文件慢一些,从管道来看也很明白要先进行解压之后再导入还原数据库,速度自然要慢一些。

---------------------------------------------------------------------------------------------------------

add:

备份全量数据库:

mysqldump -uroot -p --events --ignore-table=mysql.event --all-databases > ~/all.sql

另外补充一个点,如果是在5.6里面实用mysqldump出来的.sql数据,是没有办法再mysql5.5中恢复的。

Reference:

/questions/6682916/how-to-take-backup-of-a-single-table-in-a-mysql-database how-to-take-backup-of-a-single-table-in-a-mysql-database

/shellching/article/details/8129687 mysqldump导入导出数据库总结

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。