我有一个MySQL服务器来支持PHP应用程序。应用程序中的逻辑需要多个查询。例如,要添加事务,我需要创建多个查询对象并在不使用commit的情况下分别运行这些查询。意味着首先在表中使用一个对象添加事务数据。为了添加一种支付方法,我正在创建不同的对象。
现在它很好,因为我只有一个MySQL服务器。如果我有多台服务器(MySQL主从服务器),会发生什么?
在一个操作中创建不同的对象将调用不同的服务器。而且由于延迟数据可能无法在另一台服务器上使用。
请建议我正确地做这件事。如果问题不清楚,请澄清。谢谢!
发布于 2017-06-29 16:37:30
这真的不是复制的问题。假设您有查询A,然后查询B(它依赖于A)和查询C(它依赖B)。
因此,您可以直接向前操作,并按A、B和C顺序运行它们。复制将它们按相同的顺序放入日志中。所以当你的奴隶执行它们时,它会以同样的方式和顺序来执行它们。
即使它们不同步,奴隶也知道它在日志中最后停下来的位置,并会在那里捡回来。如果您使用RDS设置从服务器,这将自动为您处理。
发布于 2017-06-29 16:40:45
如果您正在考虑使用RDS,您将查询集群端点。该集群端点将自动命中处于活动状态的服务器,并在那里创建查询。提交查询后,从DB将自动同步以反映您的更改。这需要几毫秒。
https://stackoverflow.com/questions/44830348
复制相似问题