备份MySQL服务器的最佳方法是什么? 我想要一个方法,不需要closures服务器。 有必要像InnoDB热备份 ,或者我可以使用MySQLpipe理员工具中提供的备份工具。 一个人比另一个人有什么优势?
我们使用mysqldump,它在MySQL运行时工作。 我们开始使用mysqldump是因为当我们的需求很小的时候最容易build立,而且似乎满足了这些需求。 我们的数据库自那时以来一直在增长,但是我们还没有超过mysqldump。 它是否适合你将取决于你的数据库的大小,他们通常的操作负载,可能还有一堆其他的东西。
看看percona的xtrabackup – 这是innodb数据库的mysqlhotcopy的一个有趣的开源替代品。
你可以在这里阅读更多关于它
可以使用mysqldump ,但不能保证一致的数据集,除非在转储期间locking所有的表。 这将使数据库处于只读模式,但将确保转储是一致的。
您可以使用以下命令locking表:
FLUSH TABLES WITH READ LOCK;
当你完成后,你可以释放锁:
UNLOCK TABLES;
在stackoverflow上看看这个问题
备份生产MySQL数据库的最佳实践?
它涵盖了这个话题
设置MySQL复制 。 作为奖励你得到一个服务器来运行大量的报告工作和mysqldump,而不会影响你的主要生产数据库。
最简单的方法是简单地使用mysqldump命令。
还有一个名为mysqlhotcopy的工具,我曾经看过,并认为它保留了许多诺言 – 从来没有使用它。