阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

远程连接MySQL服务器

103次阅读
没有评论

共计 1083 个字符,预计需要花费 3 分钟才能阅读完成。

在 CentOS 虚拟机上安装好了 MySQL 服务以后,在 Windows 上用 Workbench 客户端去连接时碰到很多问题,现在把解决过程记录一下。

1. 在 Windows 上 ping CentOS IP 是可以 ping 通的,在 Workbench 上配置好后出现如下提示,

远程连接 MySQL 服务器

在 Windows 命令行里输入 telnet 192.168.199.129 3306 执行,也得到:could not open connection to the host, on port 3306 这样的提示。

在网上查了一下,觉得可能是 3306 端口没有打开,先检查一下 3306 端口的使用情况,

远程连接 MySQL 服务器

3306 这个端口没有被别的进程占用。然后看看防火墙的情况,CentOS7 中防火墙改成了 firewall,查看 firewall 的服务状态,

远程连接 MySQL 服务器

firewall 防火墙正在运行。接下来查询 3306 端口是否开放,输入 firewall-cmd –query-port=3306/tcp,如果显示的是 no,则输入 firewall-cmd –permanent –add-port=3306/tcp 开放 3306 端口,

重启防火墙,输入 firewall-cmd –reload。

2. 完成以上步骤后,再次在 Windows 命令行中输入 telnet 192.168.199.129 3306 执行,得到类似:host is not allowed to connect mysql 这样的提示。

在网上查了一下,似乎是权限的问题,一般有两个途径,

第一个方法,可能是你的帐号不允许从远程登陆,只能在 localhost。这个时候只要在 localhost 的那台电脑,登入 mysql 后,更改 “mysql” 数据库里的 “user” 表里的 “host” 项,从 ”localhost” 改称 ”%”,

在 CentOS 虚拟机中进去 MySQL,用下面的语句,

mysql>use mysql;

mysql>update user set host = ‘%’ where user = ‘root’;

mysql>select host, user from user;

但是改完了后,还是不行,还是提示 host is not allowed to connect mysql。

试第二个方法,授权,例如你想 myuser 使用 mypassword 从任何主机连接到 MySQL 服务器的话,用下面的语句,

mysql>grant all privileges on *.* to ‘myuser’@’%’ identified by ‘mypassword’ with grant option;

mysql>flush privileges;

执行完后成功了,可以用 workbench 连接上 MySQL 服务了。

远程连接 MySQL 服务器

正文完
星哥说事-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-01-22发表,共计1083字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中