远程连接linux下的mysql Err1045 Err2003解决办法
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了远程连接linux下的mysql Err1045 Err2003解决办法相关的知识,希望对你有一定的参考价值。
本人linux系统 Centos7
1.Err2003
我个人的情况是因为linux中防火墙开启并阻止了3306这个mysql端口的远程连接
解决办法:
CentOS 7.0默认使用的是firewall作为防火墙,现在要将其关闭
systemctl stop firewalld.service #停止firewall
systemctl disable firewalld.service #禁止firewall开机启动
firewall-cmd --state #查看默认防火墙状态(关闭后显示notrunning,开启后显示running)
如果你还想开启别的防火墙请记得配置相关文件不要屏蔽远程连接3306端口
下面给出一个网上找出的例子,配置iptables防火墙(我并没有自己实践)
vi/etc/sysconfig/iptables #编辑防火墙配置文件
# sampleconfiguration for iptables service
# you can edit thismanually or use system-config-firewall
# please do not askus to add additional ports/services to this default configuration
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT[0:0]
:OUTPUT ACCEPT[0:0]
-A INPUT -m state--state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p icmp -jACCEPT
-A INPUT -i lo -jACCEPT
-A INPUT -p tcp -mstate --state NEW -m tcp --dport 22 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 80 -jACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 8080-j ACCEPT
-A INPUT -j REJECT--reject-with icmp-host-prohibited
-A FORWARD -jREJECT --reject-with icmp-host-prohibited
COMMIT
:wq! #保存退出
备注:这里使用80和8080端口为例。***部分一般添加到“-A INPUT -p tcp -m state --state NEW -m tcp--dport 22 -j ACCEPT”行的上面或者下面,切记不要添加到最后一行,否则防火墙重启后不生效。
systemctlrestart iptables.service #最后重启防火墙使配置生效
systemctlenable iptables.service #设置防火墙开机启动
2.Err1045
我之前用了mysql的root账户远程linux下的mysql可能是导致这个问题的原因
于是我新建了一个账户并给这个账户分配了一个数据库然后远程,成功连接
附上mysql的添加用户相关操作
http://my.oschina.net/u/1179414/blog/202377
以上是关于远程连接linux下的mysql Err1045 Err2003解决办法的主要内容,如果未能解决你的问题,请参考以下文章
使用sqlyog远程连接Linux系统的Mysql,提示错误码:1045
Linux环境 mysql用navicat远程连接常见问题2003 1130 1045
启用远程 MySQL 连接:ERROR 1045 (28000): Access denied for user