我按照本教程Master-slave-replication进行操作
对于我的数据库复制,这适用于两个服务器都没有安装ssl的测试服务器。但是当我尝试对我的生产服务器执行相同操作时,只有master安装了ssl而不是slave服务器,我收到此错误Slave I/O: error connecting to master 'server-ipaddress:3306' - retry-time: 60 retries: 86400, Error_code: 2003
。这是ssl连接的问题还是别的什么。
同样在获取数据库的转储文件并解锁表后在主服务器上设置mysql配置时,我的mysql服务器关闭,我的网站在重新启动mysql后显示此错误error establishing database connection
我的网站再次运行正常。
我的主服务器在安装了wordpress的nginx服务器上运行,我还检查了3306正在我的主服务器上监听。 为什么我的奴隶无法连接到我的主服务器,任何解决方案?
答案 0 :(得分:0)
您可以使用以下命令检查mysql服务器正在侦听的IP地址
netstat -nlt | grep 3306
sample result:
tcp 0 0 xxx.xxx.xxx.xxx:3306 0.0.0.0:* LISTEN
如果结果显示与我类似的结果,则添加复制主用户以访问服务器数据库。
如果在mysql服务器计算机上启用了netfilter防火墙(sudo ufw enable)
,请执行以下操作以打开端口3306以进行远程访问:
sudo ufw allow 3306
再次检查状态:
sudo ufw status
您将看到3306的tcp端口已打开,可以从任何地方进行连接。现在您尝试从从服务器连接,您将获得结果。
答案 1 :(得分:0)
sudo iptables -I INPUT 1 -p tcp -s ipmaster --dport 3306 -j ACCEPT
sudo iptables -I INPUT 2 -p tcp --dport 3306 -j DROP