虚拟机linux端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 成功~
解决方法二:
具体内容请看下面代码:
mysql -uroot -p Enter password: mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'sy31214' WITH GRANT OPTION; mysql>FLUSH PRIVILEGES;
以上所述就是本文的全部内容,对于虚拟机linux端mysql数据库无法远程访问的解决办法还有好多种,欢迎各位大侠多多分享自己的解决方案,本文写的不好,望多多提出批评建议。
相关文章
MySql中 is Null段判断无效和IFNULL()失效的解决方案
这篇文章主要介绍了MySql中 is Null段判断无效和IFNULL()失效的解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教2021-06-06mysql提示Changed limits: max_open_files: 2048 max_connections:
这篇文章主要介绍了mysql提示Changed limits: max_open_files: 2048 max_connections: 1910 table_cache: 64的解决,需要的朋友可以参考下2014-05-05详解MySQL数据类型DECIMAL(N,M)中N和M分别表示的含义
关于MySQL数据类型decimal中n和m分别表示什么含义?本文就此问题作了简单论述,并创建相关表进行验证,需要的朋友可以了解下。2017-10-10
最新评论