Mysql 从属I/O:连接到主服务器时出错
我将跟随本教程学习 对于我的数据库复制,这对于两个服务器都没有安装ssl的测试服务器来说都可以正常工作。但是,当我尝试对仅安装了主服务器而未安装从服务器的生产服务器执行相同操作时,我收到以下错误Mysql 从属I/O:连接到主服务器时出错,mysql,wordpress,ssl,nginx,database-replication,Mysql,Wordpress,Ssl,Nginx,Database Replication,我将跟随本教程学习 对于我的数据库复制,这对于两个服务器都没有安装ssl的测试服务器来说都可以正常工作。但是,当我尝试对仅安装了主服务器而未安装从服务器的生产服务器执行相同操作时,我收到以下错误从I/O:连接到主服务器的错误'server ipaddress:3306'-重试时间:60次重试:86400,错误代码:2003。这是ssl连接问题还是其他问题 另外,在获取数据库转储文件并解锁表后在主服务器上设置mysql配置时,我的mysql服务器关闭,我的网站显示此错误建立数据库连接时出错重新启动
从I/O:连接到主服务器的错误'server ipaddress:3306'-重试时间:60次重试:86400,错误代码:2003
。这是ssl连接问题还是其他问题
另外,在获取数据库转储文件并解锁表后在主服务器上设置mysql配置时,我的mysql服务器关闭,我的网站显示此错误建立数据库连接时出错
重新启动mysql后,我的网站再次正常工作
我的主服务器正在安装wordpress的nginx服务器上运行,我还检查了3306是否正在我的主服务器上侦听。
为什么我的从属服务器无法连接到主服务器,有什么解决方案吗?您可以使用下面的命令检查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端口已打开,可以从任何位置进行连接。现在您尝试从从属服务器连接,您将得到结果。我这样解决:
sudo iptables -I INPUT 1 -p tcp -s ipmaster --dport 3306 -j ACCEPT
sudo iptables -I INPUT 2 -p tcp --dport 3306 -j DROP