主要介绍MySQL客户端无法连接(远程连接)MySQL服务器的原因。
这里就不在过多的介绍MySQL的安装方式,不过需要的同学,可点击CentOS 6.5 版本下 MySQL 5.1.73 版本的安装查看。
首先介绍一下服务部署情况:
服务器 | 服务 |
---|---|
服务器A | MySQL服务 |
服务器B | WEB服务 |
MySQL服务和web服务都部署成功以后,去登陆服务器B启动web服务,发现web服务启动异常,一直在提示无法连接到数据库,这就尴尬了!
首先猜测,有可能是服务器B的防火墙设置不正确,MySQL服务所需的3306端口没有开放。
登陆服务器B,查看,确实3306端口没有开放,于是调用如下指令开启3306端口:
|
|
然后保存:1 /etc/rc.d/init.d/iptables save
再次确认3306端口是否已打开:1 /etc/init.d/iptables status
服务器B打开3306端口后,重启服务器A的web服务,发现还是在一直报异常,无法连接数据库!这就纳闷了?还有什么没有修改的吗?为什么通过root用户无法远程连接呢?
查了半天资料发现:安装了MySQL之后,MySQL的root用户默认是不开放远程访问权限的。也就是说root用户默认只能通过本地连接。
所以安装完MySQL以后需要我们手动去为root用户添加远程访问权限,具体操作如下:1 grant all on *.* to root@'%' identified by 'your_password';
然后重启MySQL服务就OK了。1/etc/init.d/mysql restart
重新启动web服务,发现服务终于启动正常了。