【centos6安装教程】centos6中mysql开启远程连接的方法

更新时间:2019-08-18    来源:CentOS    手机版     字体:

【www.bbyears.com--CentOS】

远程计算机打开 mysql 服务器:

#/etc/init.d/mysql.server start

本地计算机连接远程 mysql服务器:

./mysql -h "192.168.1.244" -u root -p

发生错误:

ERROR 1130 (HY000): Host "192.168.1.100" is not allowed to connect to this MySQL server
 
原因分析:

因为mysql服务器出于安全考虑,默认只允许本地登录数据库服务器。
 
解决办法

1、在控制台执行 mysql -u root -p mysql,系统提示输入数据库root用户的密码,输入完成后即进入mysql控制台,这个命令的第一个mysql是执行命令,第二个mysql是系统数据名称,不一样的。

2、在mysql控制台执行 GRANT ALL PRIVILEGES ON *.* TO "root"@"%" IDENTIFIED BY "MyPassword" WITH GRANT OPTION;

FLUSH PRIVILEGES;


3、在mysql控制台执行命令中的 "root"@"%" 可以这样理解: root是用户名,%是主机名或IP地址,这里的%代表任意主机或IP地址,你也可替换成任意其它用户名或指定唯一的IP地址;"MyPassword"是给授权用户指定的登录数据库的密码;另外需要说明一点的是我这里的都是授权所有权限,可以指定部分权限,


4、不放心的话可以在mysql控制台执行 select host, user from user; 检查一下用户表里的内容

到此还是在客户端还是连接不上


此时检查下防火墙是否开启:

/etc/init.d/iptables status

会得到一系列信息,说明防火墙开着。则关闭:

/etc/init.d/iptables stop


另外直接在/etc/sysconfig/iptables中增加一行:

-A RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 3306 -j ACCEPT

永久关闭:

chkconfig --level 35 iptables off

记住防火墙一定要打开你指定的远程端口哦,如果是3306就要把它加入到防火墙,如

#/sbin/iptables -I INPUT -p tcp --dport 3306 -j ACCEPT
然后保存:
#/etc/rc.d/init.d/iptables save
 
查看打开的端口:

# /etc/init.d/iptables status

本文来源:http://www.bbyears.com/caozuoxitong/62829.html

热门标签

更多>>

本类排行