两台机器,每台运行mysql,每台机器同步到另一台点对点。我不希望主数据库复制。相反,我希望两个用户能够脱机处理数据(每个用户在他的机器上运行一个mysql服务器),然后在重新连接时彼此同步。有没有办法用mysql做到这一点?我应该看到的任何其他数据库比mysql更好地实现这一目标吗?
答案 0 :(得分:2)
双向复制由各种数据库系统(例如SQLServer,Sybase等)提供,但这样的设置总是存在问题。
例如,如果同一行在两个数据库上同时更新,那么更新会赢吗?
如果您的目标是提供高度可用的MySQL数据库,那么有比使用复制更好的选择。 MySQL有一个集群解决方案(尽管我没有取得多大成功),或者您可以使用DRBD和heartbeat之类的东西来提供自动故障转移而不会丢失数据。
答案 1 :(得分:0)
如果您的意思是来回同步写入,这将导致严重的数据一致性问题。我想你可能指的是MySQL复制,其中主服务器将其更新发送到一个或多个可以查询的从数据库服务器。
答案 2 :(得分:0)
对于“其他数据库选项”,SQLServer支持相当高级的“复制”过程,用于在两个或多个数据库之间同步数据。看起来MySql也有这样的东西。