1

我正在使用 Sugarsync 在 Mac 和 PC 之间同步 localhost 文件夹,
我也想同步数据库。
我可以通过简单地同步文件夹来做到这一点(我在 PC 上使用 xampp,在 Mac 上使用 WAMP)还是更复杂?如果有可能我应该同步哪些文件和文件夹?

4

3 回答 3

5

简而言之,这不是一个好主意,我认为这不可能。数据库文件基本上被锁定,因为数据库服务器需要对其具有独占访问权限。Sugarsync 无法知道这些文件处于什么状态,因此它实际上可能会将一半完成的文件从源复制到目标。它甚至可能完全破坏您的数据库,因为 Sugarsync 可能会在关键操作期间阻止对数据文件的访问

如果您需要保持数据库的同步副本,这里有一些想法。

  1. 老式的备份和恢复。如果您不需要数据库的最新副本,您可以安排每天备份一次。然后使用sugarsync将此文件复制到目的地,然后恢复它。
  2. 复制。如果您需要数据库始终以最小的延迟保持同步,我建议您查看复制。这将允许您将事务从一个数据库复制到另一个数据库。
于 2012-05-24T09:14:04.963 回答
3

问题已经有一年了,但如果其他人遇到它,我想我会添加这个。实际上,我使用 Dropbox 几年来一直在做这个人正在尝试的事情。我将 MySQL 数据文件放入一个共享的 Dropbox 文件夹并编辑 mysql.ini 让它知道它们不在默认位置。使其成功运行的关键是在计算机之间切换时启动/停止 MySQL。例如,如果我在家工作,我会启动 EasyPHP(使用它而不是 XAMPP)。我的 htdocs 位于一个符号链接文件夹中,该文件夹也通过 Dropbox 共享。我在这里做我的工作,然后关闭 EasyPHP。当我进入办公室时,一切都已同步,我在那里启动了 EasyPHP。

当我忘记在一个位置或另一个位置关闭 EasyPHP 时,数据库不会同步(数据文件被锁定,正如其他人所指出的)所以我只需通过 LogMeIn 登录到另一台机器,关闭 EasyPHP 并一两分钟后我就可以走了。

我确信这不是“正确”的方法有很多原因,但它对我来说完美无缺,数据丢失或错误为零。

于 2013-07-05T14:20:40.310 回答
0

不,恐怕您不能只使用文件同步工具同步数据库文件来保持数据库同步。

数据库的同步被称为“复制”,在 mysql 手册中有一个完整的第1章专门用于复制。

于 2012-05-24T09:12:55.537 回答