3

这是您拥有桌面应用程序并且其数据库位于远程服务器中的情况之一。就我而言,它是 MySQL,应用程序是在 Delphi XE3 中制作的。但是当客户想要他的数据离线和在线时(为了速度和安全性),我们需要:

  1. 使用远程服务器信息登录(更多更新);
  2. 将在线数据库同步到离线;
  3. 执行应用程序和数据库上的任务;
  4. 将离线数据库与在线同步。

我的问题:有没有标准的方法来做到这一点,通过 MySQL 指令或其他自动方式?还是我要编写所有规则以使其成为可能?

4

2 回答 2

4

幸运的是,这里不需要代码。
复制已经内置到 MySQL 中很多年了。

诀窍是将远程主机设置为主机,将本地副本设置为从机。
所有更新都交给主人。
从机从远程读取。

文档在这里:http
://dev.mysql.com/doc/refman/5.7/en/replication.html 这是一个教程: http: //www.howtoforge.com/mysql_master_master_replication

请注意,实际上只能有一个主控,否则设置将变得太复杂而无法使用。

于 2013-10-22T19:54:50.210 回答
0

您可以查看客户端数据集(因为您需要更新本地版本,我不相信 mysql 允许多个主控)。基本上,您的应用程序在联机时连接到 mysql,如果您的应用程序脱机,您将数据库和更改存储在本地 xml 数据库中。一回到联机状态,您就可以应用更新。cds 的缺点是:本地没有 sql,并且您的本地更改可能与其他用户所做的更改发生冲突,因此应用更新必须包含协调冲突的逻辑。cds 也参与其中,仍然试图让我了解它

于 2013-10-23T00:28:01.467 回答