问题标签 [multi-master-replication]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
132 浏览

mariadb - 将两个应用程序连接到 MariaDB 多主数据库

假设我们有两个应用程序服务器(app1 和 app2),并且我们设置了多主 MariaDB 集群,其中有两个节点(node1 和 node2),没有任何 HAProxy。我们可以将 app1 连接到 node1 并将 app2 连接到 node2,并且 app1 和 app2 都可以写入节点1和节点2?

它会引起任何冲突吗?

0 投票
1 回答
23 浏览

mysql - 如何获取多主复制中所有主控的更新和更改?

我已将 Mysql Ring 复制配置为服务器 A、B、C。当我在 A 中提交更新时,我可以在 B 中获取更改和更新。当我在 B 中进行更改时,我在 C 中获取它。当我在 A 中进行更新时,我在 A 中获取更新。

我的问题是,当我在 A 中进行更改时,我无法在 C 中进行任何更改,反之亦然。备用服务器无法获取更新。请建议我解决这个问题。

0 投票
1 回答
653 浏览

php - 使用 mysql 设置多源复制

我正在尝试设置多源复制,并且正在阅读该教程:多源复制

我想我已经找到了我们正在寻找的东西!但我有几个问题,因为这是我第一次尝试配置 MySQL 复制。

我们将有 2 台(或更多,将来会逐一添加)服务器(主服务器)将安装在外部 IP(不同的客户办公室)和 1 台“主服务器”(从服务器)安装在“网络服务器”上”(暂时不知道在哪里)。

  1. 一旦为其他主服务器(和从服务器)设置了所有内容而无需重新启动每个服务器,是否可以添加“主服务器”?将来,可能会添加多个主控。

  2. 如果我们使用自动增量并且该字段不是我的主键,我是否必须设置“auto_increment_increment”部分?这是因为主人的数量会随着时间而改变。

  3. 我们是否绝对需要对表使用 InnoDB 才能在多源复制中复制它们?或者可以使用 MyISAM?

  4. 是否可以只复制几个表,我的意思是,忽略一些表?我们必须使用这个:REPLICATE_IGNORE_TABLE 吗?

0 投票
1 回答
580 浏览

mysql - MTS 复制死锁

情况:

我们在 Percona MySQL 5.6.32-78.1 上有一个使用 GTID 的主-主-复制。在服务器上,大约有 10 个数据库,我们设置了slave_parallel_workers=5. 一台服务器用于前端处理,一台用于后端。每周两次或三次,后端服务器上的复制因错误而死

2016-10-25 10:00:01 165238 [Warning] Slave SQL: Worker 4 failed executing transaction '0e7b97a8-a689-11e5-8b79-901b0e8b0f53:22506262' at master log mysql-bin.011888, end_log_pos 9306420; Could not execute Update_rows event on table shop.sessions; Deadlock found when trying to get lock; try restarting transaction, Error_code: 1213; handler error HA_ERR_LOCK_DEADLOCK; the event's master log mysql-bin.011888, end_log_pos 9306420, Error_code: 1213 2016-10-25 10:00:01 165238 [ERROR] Slave SQL: ... The slave coordinator and worker threads are stopped, possibly leaving data in inconsistent state. A restart should restore consistency automatically, although using non-transactional storage for data or info tables or DDL queries could lead to problems. In such cases you have to examine your data (see documentation for details). Error_code: 1756 2016-10-25 10:00:01 165238 [Note] Error reading relay log event: slave SQL thread was killed

可能是什么原因?没有跨数据库的 DML 语句,我认为通过使用 MTS,每个数据库只使用一个线程(MTS 的好处是跨多个数据库使用并行复制)?为什么复制会因死锁而中断?

编辑 2016-10-28:

表的架构看起来像

当时这个错误只发生在后端,从来没有发生在前端服务器上。目前我无法粘贴确切的语句,因为二进制日志已被清除。但是这个 GTID 事务中的唯一语句是对表的基于行的 UPDATE。

0 投票
1 回答
786 浏览

mysql - 将 percona 集群从 5.6 更新到 5.7

根据 percona 更新程序(https://www.percona.com/doc/percona-server/5.7/upgrading_guide_56_57.html),您需要执行以下操作:

就我而言,我有一个包含 3 个节点(多主节点)的集群:

我的问题是:

  1. 我需要在所有节点上运行 mysql_upgrade 还是只在第一个升级的节点上运行?
  2. 如果在我完成所有节点的更新之前,其中一些节点将运行 5.6 和一些 5.7 ,是否有任何问题?

亲切的问候,西尔维

0 投票
1 回答
2191 浏览

postgresql - 如何将多个 postgres 数据库的只读副本创建到单个数据库中?

我想先说我不是 DBA,对于技术知识上的任何空白,我深表歉意。

我在一个微服务架构中工作,我们有大约十几个应用程序,每个应用程序都由其 Postgres 数据库实例(如果有帮助,它在 RDS 中)支持。每个微服务的数据库都包含一些表。可以安全地假设任何模式/表之间没有命名冲突,并且数据库之间没有任何数据分片。

我们一直遇到的问题之一是想要跨数据库分析/连接数据。现在,我们依靠一个 3rd Party 工具来缓存我们的数据,并可以跨多个数据库源进行查询(通过共享缓存)。

是否可以从我们所有的生产数据库创建模式/表的只读副本,并让它们可用于在单个数据库中查询?

是否有任何其他方法可以配置 Postgres 或 RDS 以使跨数据库连接成为可能?

0 投票
1 回答
1970 浏览

ldap - OpenLDAP 多主复制

我目前正在四个节点上测试 OpenLDAP 多主机复制,但我遇到的问题很少。

我遵循本教程:setup-openldap-multi-master-replication-centos-7并成功配置了四节点多主机复制。

如果所有节点都处于活动状态,则一切正常,数据将在所有四个节点之间复制。即使我停止一个/两个/三个节点,仅在生命节点上进行一些更改,当它们重新启动时,数据也会复制到节点。

但问题是,如果我在节点 ldap1、ldap2 和 ldap3 上停止并启动 slapd 服务,而我在节点 ldap4 上进行一些“多次”更改。

我遇到问题的一种情况:在一个节点上我启动脚本,用于在 ldap 中插入用户

所有用户现在都在所有数据库中 - 一切都是同步的。

然后在一个节点上,我启动删除用户的脚本:

那时我在其他三个节点上停止/启动/停止/启动 slapd 服务。脚本删除完成后,ldap 数据库不再同步。

命令ldapsearch -x cn=ldaptest -b dc=test,dc=com |grep numEntries返回:

这种行为对于 LDAP 是正常的还是我的配置有问题?

过程与教​​程中的相同,我只是添加了其他 olcSyncRepl 条目进行复制。就像是:

我的第一印象是,如果在我们在 ldap db 中插入或删除数据时重新启动节点,则 ldap 多主机复制不是很可靠。

0 投票
1 回答
1148 浏览

amazon-dynamodb - 具有多主复制的数据库

启用多主复制的可扩展数据库有哪些好的选择。我们谈论的是 15-16 TB 的数据。我们正在考虑 DynamoDB。还有更多我们应该查找的数据库吗?欢迎任何有关 DynamoDB 使用的建议以及有关所需数据库类型的新想法。

0 投票
1 回答
1083 浏览

postgresql - 阻止 BDR 复制 DROP TABLE 或 CREATE TABLE

我有两个数据库,其中包含要同步的表。我不想同步任何其他表。我正在使用 Postgres-BDR 来做到这一点。

这些表是复制集的一部分common。在某些情况下,其他表在节点之间共享名称(但不在 中common),并且节点将调用DROP TABLEthen CREATE TABLE。即使这些表不是common复制集的一部分,这些命令仍会复制到其他节点,导致其他节点丢失其表中的所有数据,然后创建一个空表。

我怎样才能阻止这个?我只希望将影响common的命令复制到其他节点。

0 投票
1 回答
283 浏览

mysql - MySQL 多主复制多位置

我有一个在两个远程位置运行的数据库。(A & B) 服务器在一个位置 (A) 本地可用。但是,第二个位置 (B) 通过 Internet 访问数据库。

如果位置 A 的互联网出现故障,位置 B 将失去与数据库的连接。

是否可以通过连续复制和以下条件将另一台服务器放置在位置 B:- 如果互联网在位置 A 工作,则用户只能访问位置 A 服务器。用户可以访问位置 B 的可用服务器,直到位置 A 的互联网关闭。一旦连接恢复,两个数据库都可以复制。如果有任何不匹配/重复,那么位置 A 将被视为主位置并且更改将被覆盖?

我想知道这样的解决方案是否可行,以及我在此设置中可能遇到的问题?