是否有机会在PDO设置中设置SELECT将在SLAVE DB服务器上执行,并且Insert&Update&DELETE将在MASTER DB服务器上执行,或者我需要创建PHP处理程序来执行此操作?
情况:
我们有Master - Master复制MySQL.我们将添加两个新服务器,因此它将是 - 主/从 - 主/从.
我想为SELECT查询创建一些处理.我希望在SLAVE而不是MASTER上执行SELECT查询,并且所有UPADTE和INSERT&DELETE查询都将在MASTER上执行.这有可能通过一些设置吗?
谢谢!
不,您无法配置PDO或任何PHP的数据库扩展来执行此操作.这仅仅是因为每个PDO(或MySQLi等)实例代表单个服务器的单个连接.
所以是的,你需要一个知道多个连接的处理程序来做到这一点.一些流行的ORM和其他数据库抽象层确实提供了这样的功能.