赞
踩
Navicat报1130的错误通常表示MySQL 服务器拒绝了连接。
先看看服务器的安全组里的入站规则中开启了运行3306 的策略了嘛。
1. 检查MySQL服务器是否在运行:确保你的MySQL服务器正在运行
检查mysql服务的运行状态命令如下:
systemctl status mysqld
结果中显示是绿灯就是运行中,红灯就是停止状态。
启动MySQL服务命令如下:
systemctl start mysqld
2. 检查MySQL服务器的防火墙设置:确保防火墙没有阻止MySQL的连接。检查MySQL服务器和本地机器上的防火墙设置,确保MySQL使用的端口(通常是3306)是开放的。
1)可以直接关闭防火墙命令如下:(暂时关闭,下次重启还会生效):
sudo systemctl stop firewalld
2)设置防火墙放行3306端口命令如下:
这个命令是放行3306端口的命令:
sudo firewall-cmd --zone=public --add-port=3306/tcp --permanent
这个命令是刷新防火墙规则的命令
sudo firewall-cmd --reload
3. 检查MySQL用户权限: 确保你使用的MySQL用户具有从远程主机连接的权限。你可以通过登录MySQL服务器并检查用户权限来执行此操作。
在MySQL命令行输入如下命令:
GRANT ALL PRIVILEGES ON *.* TO '你的用户名'@'%' IDENTIFIED BY '你的密码' WITH GRANT OPTION;
上述命令中,`你的用户名`和`你的密码`应替换为你实际使用的用户名和密码。
4. 检查bind-address设置:在MySQL配置文件中(通常是`my.cnf`或`my.ini`),确保`bind-address`设置允许远程连接。将其设置为MySQL服务器的IP地址或0.0.0.0,以允许来自任何IP的连接。(这个应该是主要问题;因为MySQL服务器默认不允许远程连接;需要自己修改参数)
第四步涉及到检查bind-address设置,是在MySQL服务器的配置文件中进行的。配置文件通常是my.cnf(对于Unix/Linux系统)或my.ini(对于Windows系统)。
以下是一些具体的步骤,你可以根据你的操作系统和MySQL版本进行调整:
sudo vi /etc/my.cnf
如果没有这个文件那就是:
vim /etc/mysql/my.cnf
在配置文件中搜索 bind-address 参数。这个参数通常位于 [mysqld] 部分。如果没有找到,你可以添加它。0.0.0.0表示所有ip都可以远程连接
bind-address = 0.0.0.0
输入":wq"保存退出。
重庆一下MySQL服务:
systemctl restart mysqld
然后再次尝试重新连接
5. 检查网络连接:确保你的网络连接正常,且能够到达MySQL服务器。有时候网络问题也可能导致连接失败。
ping一下你的服务器IP看看能否ping通。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。