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

centos下mysql开启远程访问

2016-12-16 09:22 447 查看
转自:http://www.centoscn.com/mysql/2016/0530/7309.html

登录MySQL:  mysql -u root -p;
然后输入密码,
如需修改密码,第一次:  mysqladmin -u root password NEWPASSWORD 
已设置过:  mysqladmin -u root -p 'oldpassword' password newpassword
执行以下命令开启远程访问限制  grant all privileges on *.* to 'root'@'192.168.0.1' identified by 'password' with grant option;
                                          flush privileges; 
                                          exit;
上面的是开启的IP 192.168.0.1的,如要开启所有的,用%代替IP
grant all privileges on *.* to 'root'@'%' identified by 'password' with grant option;
 
 
 
CentOS,以下的命令在debian等系统下应该也OK。

mysql -u root -p
mysql # 第1个mysql是执行命令,第2个mysql是系统数据名称
在mysql控制台执行:

grant all privileges on *.* to 'root'@'%' identified by '123456' with grant
option;
# root是用户名,%代表任意主机,'123456'指定的登录密码(这个和本地的root密码可以设置不同的,互不影响)
flush privileges; #
重载系统权限
exit;
允许3306端口

iptables -I INPUT -p
tcp -m state --state NEW -m
tcp --dport 3306 -j
ACCEPT
# 查看规则是否生效
iptables -L -n #
或者: service iptables status
 
# 此时生产环境是不安全的,远程管理之后应该关闭端口,删除之前添加的规则
iptables -D INPUT -p
tcp -m state --state NEW -m
tcp --dport 3306 -j
ACCEPT
PS,上面iptables添加/删除规则都是临时的,如果需要重启后也生效,需要保存修改: service iptables save # 或者: /etc/init.d/iptables save 另外, vi /etc/sysconfig/iptables # 加上下面这行规则也是可以的 -A INPUT -p tcp -m state --state NEW -m tcp --dport 3306 -j ACCEPT

QQ:463431476 小波

cnblog:http://www.cnblogs.com/xiaobo-Linux

作者:小波Linux 

出处:http://www.cnblogs.com/xiaobo-Linux/
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: