远程连接MySQL报错ERROR 2003解决办法

作者:袖梨 2022-11-14


问题代码代码

ERROR 2003 (HY000): Can't connect to MySQL server on '192.168.0.19' (111)
ERROR 2003 (HY000): Can't connect to MySQL server on '192.168.0.19' (111) 这个 原因就是Mysql数据库的默认配置文件my.cnf(linux下)中的bind-address默认为127.0.0.1,所以就算你创建了可以 remote访问的用户,你也不能使用mysql -h命令进行访问,若访问就会出现上出问题,因为此时Mysql只接受localhost,所以需要把bind-address屏蔽掉。
my.cnf一般在/etc/mysql下面,如果不在使用locate my.cnf查找,修改前的my.cnf配置文件为:
修改前的my.cnf配置文件代码
#
# Instead of skip-networking the default is now to listen only on
# localhost which is more compatible and is not less secure.
bind-address = 127.0.0.1
#
# Instead of skip-networking the default is now to listen only on
# localhost which is more compatible and is not less secure.
bind-address = 127.0.0.1
我们需要做的就是屏蔽这个bind-address代码,屏蔽后代码为:
屏蔽后my.cnf配置文件代码
#
# Instead of skip-networking the default is now to listen only on
# localhost which is more compatible and is not less secure.
#bind-address = 127.0.0.1
#
# Instead of skip-networking the default is now to listen only on
# localhost which is more compatible and is not less secure.
#bind-address = 127.0.0.1
现在你就可以用mysql -h命令进行你想做的操作了,如登录系统:
登陆数据库代码
mysql -h 192.168.0.19 -u root -p

如果上面还不能解决可能是防火强的问题了


1.mysql 错误 ERROR 2003 (HY000): Can't connect to MySQL server on 'localhost'

解决办法:关闭防火墙,安阳电脑网,linux下命令

[root@etl01 bin]# chkconfig --list | grep -i iptables ====check fire wall

iptables 0:off 1:off 2:on 3:on 4:on 5:on 6:off

[root@etl01 bin]# /sbin/service iptables stop ====stop fire wall

Flushing firewall rules: [ OK ]

Setting chains to policy ACCEPT: nat filter [ OK ]

Unloading iptables modules: [ OK ]

2.报错:1130-host ... is not allowed to connect to this MySql server

解决办法:

授权形式

比如账户为root,密码为root

use mysql;

用root账户从任何主机上访问mysql数据库了

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION;

如果你想允许用户zz从ip为192.168.1.3的主机连接到mysql服务器,并使用123456作为密码

GRANT ALL PRIVILEGES ON *.* TO 'root'@'192.168.1.3' IDENTIFIED BY '123456' WITH GRANT OPTION;

相关文章

精彩推荐