首页 / 数据库 / MySQL / 解决虚拟机Linux端MySQL数据库无法远程访问
1、 在控制台执行 mysql -u root -p mysql,CentOS系统提示输入数据库root用户的密码,输入完成后即进入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、 切换到root用户 打开iptables的配置文件:vi /etc/sysconfig/iptables添加红色字体 # Firewall configuration written by system-config-firewall
# Manual customization of this file is not recommended.
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -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
COMMIT 全部修改完之后重启iptables:service iptables restart 可以验证一下是否规则都已经生效:iptables -L 这样,我们就完成了CentOS防火墙的设置修改。在远程:mysql -h 192.168.16.128 -u root2 -p 输入密码 root2 成功~本文永久更新链接地址