您的位置:首页 > 运维架构 > Linux

Linux 下配置 MySQL 远程访问

2012-10-11 18:40 531 查看


[align=center]<script src="../../system/system60.js" type="text/javascript" language="javaScript"></script>[/align]
Linux 下配置 MySQL 远程访问的设置网上介绍很多,但是自己实际操作是还是遇到了很多麻烦,记录一下(红色的地方是需要注意的 )。

第一步和Winddows下配置mysql的远程登录一样,一般执行如下语句就行:   

use mysql;      
GRANT ALL ON *.* TO admin@'%' IDENTIFIED BY 'admin' WITH GRANT OPTION;   
  
GRANT ALL ON *.* TO admin@'localhost' IDENTIFIED BY 'admin' WITH GRANT OPTION;  
  
flush privileges  

实际上创建了一个用户 用户名:admin  密码:admin  远程访问的时候就用这个用户名和密码登录。
第二步 是打开防火墙 

简单关闭防火墙不好用。 

先停止防火墙 service iptables stop 然后修改 /etc/sysconfig/iptables

添加 -A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT  

-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT   
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306  -j ACCEPT   
  
-A INPUT -j REJECT --reject-with icmp-host-prohibited   
-A FORWARD -j REJECT --reject-with icmp-host-prohibited  

需要注意的是添加的位置必须在

-A INPUT -j REJECT --reject-with icmp-host-prohibited   
-A FORWARD -j REJECT --reject-with icmp-host-prohibited  

上方。 

然后启动防火墙:

service iptables start

第三步 如果还是有问题可以修改如下的配置 /etc/my.cnf

[mysqld]   下面添加

skip-name-resolve   
bind-address=0.0.0.0  

如果找不到my.cnf 文件,拷贝my-small.cnf 到/etc 改名my.cnf就可以了

不知到 my-small.cnf 的位置就用 find / -name my-small.cnf
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息