我正在按照本教程进行主从复制 对于我的数据库复制来说,这对于两台服务器都没有安装 ssl 的测试服务器来说工作得很好。但是当我尝试对我的生产服务器执行相同的操作(其中只有主服务器安装了 ssl 而没有安装从属服务器)时,我收到此错误
Slave I/O: error connecting to master 'server-ipaddress:3306' - retry-time: 60 retries: 86400, Error_code: 2003
。这是ssl连接的问题还是其他问题。
此外,在获取数据库转储文件并解锁表后在主服务器上设置 mysql 配置时,我的 mysql 服务器关闭,我的网站显示此错误
error establishing database connection
重新启动 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
问题是 Last_IO_Error: errorconnecting to master '[email protected]:3306' - retry-time: 60 max-retries: 86400 message: Host 'Sardar' is not allowed to connect to this MariaDB server