转自:http://www.111cn.net/database/mysql/48040.htmhtml
问题代码代码mysql
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 -plinux
若是上面还不能解决多是防火强的问题了sql
1.mysql 错误 ERROR 2003 (HY000): Can't connect to MySQL server on 'localhost'
数据库
解决办法:关闭防火墙,安阳电脑网,linux下命令服务器
[root@etl01 bin]# chkconfig --list | grep -i iptables ====check fire wallless
iptables 0:off 1:off 2:on 3:on 4:on 5:on 6:offthis
[root@etl01 bin]# /sbin/service iptables stop ====stop fire wall.net
Flushing firewall rules: [ OK ]server
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;