这个问题在2004年的MySQL论坛上被问到,没有任何答案。
我正在Windows 2003 Server上安装MySQL 5.0.x,以便与Drupal一起使用。 我开始使用mysqldumpconfiguration备份,当我发现使用影子复制进行的备份应该足够可靠以备份数据库时。 我的逻辑是否有缺陷?
这完全取决于在备份的时候mysql服务的状态。 但简单的答案是否定的,这不是一个安全或好的方法来做一个MySQL备份。 您应该使用包含的mysqlbackup来定期备份数据库。 您可以备份到本地计算机,然后使用ntbackup备份备份。
通常,不要备份正在运行的数据库的数据目录(目录)。 如果您可以先closures数据库,则只备份目录。 如果数据库正在运行并支持热备份,则可以在数据库正在运行的情况下进行备份。 这通常需要备份软件和数据库软件之间的通信。
可能,但我不会指望它。 数据可能会caching在内存中,或者在您复制时进行修改。 如果在备份数据之前closuresMySQL,那么它应该是可靠的。 有pipe理工具来做备份。 这些将在另一个目录中创build可靠的备份。
我猜mysql数据库正在使用中。 否则就没有意义了。
也许你想build立一个复制的MySQL数据库,并且在备份slave db的过程中断开从站与主站的连接,然后重新连接,从站直到你的下一次备份。 你可以用一些脚本来做到这一点。
编辑 :如果你使用nt影子副本只读快照,这并没有太大的改变。 它将帮助您比较问题,但不符合一致性。
如果你想要一个一致的备份,你应该在mysql层次上执行,例如上面所描述的。 Mysql将使用二进制日志来复制数据库,并且应该有最大的一致性。 二进制日志将尊重事务。
但在应用程序级别有一些要考虑的事情: http : //dev.mysql.com/doc/refman/5.0/en/replication-features-transactions.html