Mysql双向复制(双向)

时间:2016-02-25 05:27:28

标签: mysql amazon-web-services database-replication

我想同步两个DB运行时间

服务器A:安装了公共IP和mysql的Amazon ec2。 服务器B:这是局域网中使用mysql的私有机器。 (IP是私有的192.168系列)

所以我在这个场景中尝试使用单一公共IP的多种方式,没有运气。 我们可以在本地的AWS实例上执行任何提取/拉取和推送。 意味着AWS具有唯一的IP,因此我们可以将其用于提取和推送数据。 这样的事情可能吗?

服务器B(本地)也可以使用ISP的IP(IP得到'我的IP是什么') 但最终在局域网中有10台机器都具有相同的IP(ISP的IP)

因此可以将数据从本地(服务器B)推送到AWS(服务器A) 或者数据可以从AWS拉到本地

如果正确的话,这将对我有所帮助

由于

2 个答案:

答案 0 :(得分:0)

是的,您可以实现此目的,但需要进行大量配置。 您需要在专用网络上进行端口转发,以允许MySQL流量进入托管服务器的计算机。

然后您需要决定数据的复制方式。MySQL to do it

中有几种方法

或者您可以尝试编写一个执行此操作的脚本,但最终可能会变得更加困难。你需要考虑你想要实现的目标,以及这是否是最好的方法,因为它需要付出很多努力。

答案 1 :(得分:0)

MySQL有一个用于复制的连接的标准机制:从服务器始终负责启动和保持打开与主服务器的连接,并且主服务器使用该连接将事件推送到从服务器。

当复制是循环的时,每台机器都是主机和从机,因此两者都需要能够相互建立连接。

在您的配置中,专用网络上的从属设备应该能够轻松地使用公共IP地址与主设备建立连接,但不能相反,因为私有IP地址。

简而言之,这是一个问题,通过使用适当的网络基础设施来启用这些连接 - 特别是隧道或VPN(并且存在大量但不是全部的重叠)来解决在这两个术语之间)。

查看openvpn或ssh隧道。如果您的EC2机器在VPC中,VPC还提供硬件VPN解决方案。有许多解决方案,而不是单一的"正确的"一,因为,正如我上面所建议的,这不是特定于MySQL的问题,MySQL没有内置的解决方案,因为这确实是一个网络问题。