资讯专栏INFORMATION COLUMN

如何在本地远程连接虚拟机上CentOS7的mysql

sf_wangchong / 406人阅读

摘要:例如,你想使用从任何主机连接到服务器的话。如果你想允许用户从为的主机连接到服务器,并使用作为密码如果你想允许用户从为的主机连接到服务器的数据库,并使用作为密码验证远程连接虚拟机数据库访问在中的输入连接成功之后就可以用连接虚拟机中的数据库了

参考:https://www.cnblogs.com/dump/...
https://blog.csdn.net/asd104/...

1.检查虚拟机IP在本地是否可以ping 通过
虚拟机IP:172.21.0.4

本地执行一下,没有问题

2.检查虚拟机Mysql的端口是否对外开放(这个必须要开放)

查看mysql的端口,在mysql命令行模式下执行以下命令就可以查看,查到的结果是3306

[root@localhost ~]# mysql -u root -p
mysql> show variables like "%port%";

查看虚拟机的3306端口是否开放

cmd下执行telnet 172.21.0.4 3306

无法执行,别方,这是因为Windows telnet默认是关闭的


重新打开cmd窗口执行命令,结果是无法连接,这是因为虚拟机上的3306并没有对外开放,可以用22的试下效果就知道了

3.打开linux的3306端口
首先安装iptables

如果你要改用iptables的话,需要安装iptables服务:

安装

sudo yum install iptables-services 

开启iptables

sudo systemctl enable iptables 
sudo systemctl enable ip6tables 

启动服务

sudo systemctl start iptables 
sudo systemctl start ip6tables

打开指定端口:
打开iptables文件

vi /etc/sysconfig/iptables

进入编辑页面,在指定位置新增以下配置。放在 -A INPUT -m state –state NEW -m tcp -p tcp –dport 22 -j ACCEPT 后面

进入后用i编辑,将下列复制进去,然后按ESC键,输入:wq!保存退出

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

修改完保存退出,重启网卡服务

service iptables restart

在windwos下 ping 172.21.0.4 3306 还是没成功,是因为mysql没有给外来主机的权限

解决办法:
1.改表法

[root@localhost ~]# mysql -u root -p
mysql> use mysql;
mysql>update user set host = "%" where user = "root";
mysql>select host, user from user;
mysql> FLUSH   PRIVILEGES;

其中更新表中数据报错,不用管它,已经改好了,不信可以查表来验证


2.授权法。
例如,你想myuser使用mypassword从任何主机连接到mysql服务器的话。

GRANT ALL PRIVILEGES ON *.* TO "myuser"@"%" IDENTIFIED BY "mypassword" WITH GRANT OPTION;

FLUSH   PRIVILEGES;

如果你想允许用户myuser从ip为192.168.1.6的主机连接到mysql服务器,并使用mypassword作为密码

GRANT ALL PRIVILEGES ON *.* TO "myuser"@"192.168.1.3" IDENTIFIED BY "mypassword" WITH GRANT OPTION;

FLUSH   PRIVILEGES;

如果你想允许用户myuser从ip为192.168.1.6的主机连接到mysql服务器的dk数据库,并使用mypassword作为密码

GRANT ALL PRIVILEGES ON dk.* TO "myuser"@"192.168.1.3" IDENTIFIED BY "mypassword" WITH GRANT OPTION;

FLUSH   PRIVILEGES;

4、验证远程连接虚拟机数据库访问

在windows中的cmd输入telnet 172.21.0.4 3306

连接成功

之后就可以用Navicat连接虚拟机中的数据库了

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/63129.html

相关文章

  • 如何本地远程连接虚拟机上CentOS7mysql

    摘要:例如,你想使用从任何主机连接到服务器的话。如果你想允许用户从为的主机连接到服务器,并使用作为密码如果你想允许用户从为的主机连接到服务器的数据库,并使用作为密码验证远程连接虚拟机数据库访问在中的输入连接成功之后就可以用连接虚拟机中的数据库了 参考:https://www.cnblogs.com/dump/...https://blog.csdn.net/asd104/... 1.检查虚拟...

    or0fun 评论0 收藏0
  • 虚拟机安装mysql以及远程连接

    摘要:记录一下自己虚拟机安装以及远程连接全过程,以后备用可视化桌面环境配置和安装开启虚拟机命令会出错,解决直接按照错误提示的来就可以启动虚拟机命令修改密码时会出错,版本之后增加了密码强度验证插件,相关参数设置的较为严格。 记录一下自己虚拟机安装mysql以及远程连接全过程,以后备用vmware+centos7 centos7 Linux可视化桌面https://www.cnblogs.com...

    Hanks10100 评论0 收藏0
  • 虚拟机安装mysql以及远程连接

    摘要:记录一下自己虚拟机安装以及远程连接全过程,以后备用可视化桌面环境配置和安装开启虚拟机命令会出错,解决直接按照错误提示的来就可以启动虚拟机命令修改密码时会出错,版本之后增加了密码强度验证插件,相关参数设置的较为严格。 记录一下自己虚拟机安装mysql以及远程连接全过程,以后备用vmware+centos7 centos7 Linux可视化桌面https://www.cnblogs.com...

    stormzhang 评论0 收藏0
  • LNMP环境搭建(一):Mysql

    摘要:如果在未删除的情况下尝试在任一服务器上进行安装,安装将终止并显示一条错误消息以指向卸载卸载默认安装了编译安装官方文档下载相关源码下载,的相关依赖安装依赖是一个跨平台的安装编译工具,可以用简单的语句来描述所有平台的安装编译过程。 安装虚拟机 出于学习目的选择最小安装 选择启动项「第一项正常启动、第二项是修复模式」 showImg(https://segmentfault.com/img/...

    skinner 评论0 收藏0
  • 虚拟机Centos6.8安装MYSQL5.7,本地Navicat连接

    摘要:虚拟机与虚拟机使用环境使用,可是自己选择的我下载的是版本之后就是常规的安装,比较简单配置第一步备份你的原镜像文件,以免出错后可以恢复。 虚拟机与Centos 虚拟机使用VMware 环境使用Centos6.8,可是自己选择Centos7的 showImg(https://segmentfault.com/img/bVbhmdr?w=674&h=442); 我下载的是DVD版本 之后就是...

    TigerChain 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<