MySQL 复制有多快?

Ste*_*ers 18 mysql performance replication

我正在考虑设置我们的 mysql 数据库的复制,以便能够在我们的每个分支机构拥有本地从设备,同时在主办公室拥有主设备以提高我们分支机构的应用程序性能(显着)。

db 本身并不是那么大(<1gb),但我想知道;考虑 200-300 条记录更新/分钟上限:复制速度有多快?(假设,首先,一个 5mb 通用 dsl 连接,必要时更快 - 试图保持尽可能低的成本,但钱是有更多的)

是否批量复制整个表?复制是否按需完成,因为表中的每条记录都被更新(从文档中,我想我看到它是可配置的)?

笔记:

  • 我正在考虑按照此处的文档设置 1 个主站、2 个从站(目前为 2 个分支机构),但它是一个应用程序,而不是 Web 客户端
  • 在主服务器上完成的任何更新都需要在 <10 分钟内复制到其他从服务器。
  • 所有这些都假设我可以让我们的 ORM(DevExpress XPO)对从从站读取和写入主站的概念感到满意。

Joe*_*Joe 22

MySQL 复制尽可能接近实时地进行,并受磁盘和网络 I/O 的限制。从设备向主设备打开一个套接字,该套接字保持打开状态。当一个事务发生在 master 上时,它会被记录在 binlog 中,并在 slave(s) 上简单地重放。如果 master 和 slave 之间的 socket 中断,则在下一次成功连接时为 slave 重放 binlog。

多主复制做同样的事情,但是是双向的。

一些基本计算将帮助您更好地确定带宽需求。

Average transaction size * number of slaves * updates/minute = bandwidth needed

希望这可以帮助。