如何在MySQL中进行备份?
我希望每隔"x"小时运行mysqldump会有更好的东西.
有没有类似SQL Server的东西,你可以在那里每天进行完整备份,然后每小时进行一次增量备份,所以如果你的数据库死了你可以恢复到最新的备份?
像DB日志这样的东西,只要日志不死,你可以恢复到数据库死亡的确切位置?
另外,这些东西如何影响锁定?如果我做一个mysqldump,我希望在线交易能锁定一段时间.
Jon*_*per 11
mysqldump是一种合理的方法,但请记住,对于某些引擎,这将在转储期间锁定表 - 这对大型生产数据集有可用性问题.
一个明显的替代方案是来自Maatkit(http://www.maatkit.org/)的mk-parallel-dump,如果你是mysql管理员,你应该检查一下.这使用mysqldump并行转储多个表或数据库,从而减少转储所花费的总时间.
如果你在一个复制的设置中运行(如果你在生产中使用MySQL来处理重要的数据,你就没有理由不这样做了),从专用于此目的的复制从服务器中获取转储将防止任何锁定问题.制造麻烦.
下一个明显的替代方案 - 至少在Linux上 - 是使用LVM快照.您可以锁定表,快照文件系统,并再次解锁表; 然后使用该快照的挂载启动一个额外的MySQL,从那里转储.这里描述了这种方法:http: //www.mysqlperformanceblog.com/2006/08/21/using-lvm-for-mysql-backup-and-replication-setup/
| 归档时间: |
|
| 查看次数: |
10562 次 |
| 最近记录: |