远程连接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

远程连接mysql出现1045错误的解决办法

使用远程链接数据库工具无法链接到 linxu 系统上的数据库配置 1045

用heidisql连接远程mysql数据库提示SQL错误1045,Access denied for...