mysql备份和还原

MySQLl提供了一个mysqldump命令,我们可以用它进行数据备份。

按提示输入密码,这就把abc数据库所有的表结构和数据备份到abc_20161108.sql了,

# mysqldump -u root -p abc > abc_20161108.sql


因为要总进行备份工作,如果数据量大会占用很大空间,这时可以利用gzip压缩数据,命令如下:

# mysqldump -u root -p tabc m | gzip > abc_20161108.sql.gz

系统崩溃,重建系统时,可以这样恢复数据:

# mysqldump -u root -p abc < abc_20161108.sql

从压缩文件直接恢复:

#gzip < abc_20161108.sql.gz | mysqldump -u root -p abc

当然,有很多MySQL工具提供更直观的备份恢复功能,比如用phpMyAdmin就很方便。
但我认为,mysqldump是最基本、最通用的。

当做注册等会产生数据的自动化GUI或者接口测试时,可以在使用脚本在测试执行前备份数据库,每次测试完毕后执行还原,并删除掉备份即可。

如果数据确认会长久不变,可以去掉最后的删除备份步骤。