我正在尝试在 Windows Server 2008 中执行主服务器到主服务器的复制。我成功地将主服务器 1 的所有数据库复制到主服务器 2。但是我无法将在主服务器 2 上所做的更改复制到主服务器 1。后来我发现,我可以使用端口 3306 从主服务器 2 远程登录到主服务器 1,但我无法从主服务器 1 远程登录到主服务器 2。
当我检查两台 Master 上的 netstat 时,我发现了以下结果。我无法发布我的公共 IP,因此我将它们各自的 IP 命名为 Master 1 和 Master 2
主 1
C:\Users\XXXXX>netstat
Active Connections
Proto Local Address Foreign Address State
TCP Master 1:3306 Master 2:61566 ESTABLISHED
TCP Master 1:3389 My remote:56053 ESTABLISHED
TCP 127.0.0.1:3306 Master 1:60675 ESTABLISHED
TCP 127.0.0.1:3306 Master 1:60712 ESTABLISHED
TCP 127.0.0.1:60675 Master 1:3306 ESTABLISHED
TCP 127.0.0.1:60712 Master 1:3306 ESTABLISHED
大师 2
C:\Users\XXXX>netstat
Active Connections
Proto Local Address Foreign Address State
TCP Master 2:3389 My remote:56124 ESTABLISHED
TCP Master 2:61566 Master 1:3306 ESTABLISHED
TCP Master 2:61574 bil-sc-cm02:http ESTABLISHED
TCP 127.0.0.1:3306 Master 2:61562 ESTABLISHED
TCP 127.0.0.1:3306 Master 2:61563 ESTABLISHED
TCP 127.0.0.1:61562 Master 2:3306 ESTABLISHED
TCP 127.0.0.1:61563 Master 2:3306 ESTABLISHED
TCP 127.0.0.1:61573 Master 2:3306 TIME_WAIT
所有这些都表明在我的 master 2 中,端口 3306 未激活。现在我需要解决方案。我该如何解决。您的小小建议对我来说意义重大。
谢谢
问候,
乌迪扬
答案1
“Telnet” 只是表示您可以建立 TCP 连接。不要太关注它。
更重要的信息在您的 netstat 输出中。如您所见,Master2 上的 MySQL 进程仅监听 127.0.0.1,而不监听“Master 2”接口。您需要配置 MySQL 以监听该接口。
在 Linux 系统上,您可以编辑 /etc/my.cnf 并将bind-address
参数更改为其他内容127.0.0.1
,然后重新启动 MySQL。我不清楚如何在 Windows 上执行此操作,但应该有类似的方法来更改此参数(也许通过管理 GUI?)。