【发布时间】:2018-04-28 22:10:20
【问题描述】:
我已经使用两个 MariaDB 10.2 数据库设置了一个小型集群,一个是(主动)主数据库,另一个是备用数据库(被动主数据库)。我已启用 GTID 和半同步复制。假设MDB1是master,MDB2是standby,因此MDB2复制MDB1 binlog,MDB1复制MDB2 binlog。当然为了避免冲突,我只写在 MDB1 上。
我担心的是 JDBC 参数:我无法真正理解 failover、replication 和 sequence 之间的区别。
jdbc:mariadb:replication://localhost:3306,localhost:3307/mydb
使用上面的 replication 似乎总是在 MDB1 (:3306) 上写入并同时从 MDB1 和 MDB2 中读取,对吧?
如果我想始终从 MDB1 写入和读取,除非它变得不可用,这是正确的设置吗?
当 MDB1 再次可用时,如何避免不一致?这是否通过使用 GTID 来保证?
我已遵循这些指南:
【问题讨论】:
标签: mysql jdbc mariadb database-replication high-availability