无法连接云服务器上的MySQL服务

时间:2024-04-07 16:31:19

最近刚换了一台云服务器,打算自己私用,放一些小程序在上面。

服务器:腾讯云。然后自己装了MySQL服务。于是就有了后面一系列的问题。首先是各种百度查资料,发现都是千篇一律,几乎是没什么营养,然后就失望了,也就不打算继续在网上查询资料了,怎么办,自己的东西出了问题还不是得自己解决。刚好到现在解决了,回想一下确实不容易,浪费了两天光景。因此打算记下来避免以后再遇到类似的情况。下面介绍出现问题的情况以及解决问题的过程。

首先在本地(我自己的笔记本)上面调试写好了的代码,在执行数据库命令的时候出现:Unable to connect to any of the specified MySQL hosts.我当时一脸懵逼。在网上查了一堆资料,全部是说啥子连接字符串搞错了,我特么当时就想问,可能吗,只想说我有一句MMP一定要讲。然后又陆陆续续的浪费了一段时间,也是同样的答案,于是我就放弃了。关灯睡觉。然后今天打开腾讯云控制台,进入安全组,沃尔玛,一切仿佛都变得清晰了。(这里提示一点,在我安装MySQL服务的时候就已经检查和设置了服务端口,这里我的MySQL服务用的是默认的3306端口,也就是入站规则那里,具体怎么设置这里就不说了,都是基本操作)。现在请看下图无法连接云服务器上的MySQL服务

最开始进入的时候被红色框圈住的部分是没有的。也就是说,红色框内的部分是我自己后来添加的。到这里各位朋友大概也就明白了原因了吧。所以呢添加一条规则就好了。并且注意【关联实例数】,也就是关联你的MySQL服务所在的服务器。至于具体怎么设置,都是基本操作,不再累赘。如果设置不了的话,那就不要用电脑了。至此,第一阶段的问题已经结束。下面进入后续问题处理。

当我在腾讯云控制台上面设置好了后,以为就万事大吉的时候,重新再本地打开数据库工具连接MySQL服务,我勒个去,又连接不上了,出现异常:Host '' is not allowed to connect to this MySQL server. 不过兵来将挡水来土掩,出现了问题就解决问题嘛,毕竟解决一个就离成功更进一步了不是吗。这句话就是不允许连接这货,我猜想可能是没得权限的问题,继续猜想可能是MySQL服务安装后的配置文件修改一下就好了。于是乎带着我的猜想又去了网上查询各种资料。这次我特么真实服了,网友们的啥子鬼博客啊,问答啊竟然出乎意料的一致,特么的读书的时候抄作业都不带这样玩儿的。自己都没有实践过就把别人的东西抄过来,我想说有意思吗?简直难受。(提示一下:网上的朋友几乎都是说啥子添加入站规则啊,防火墙啊啥子鬼的,我去年买了个表,特么的。甚至还有说MySQL服务没有启动的)。反正网上的资料每一个有用的,于是乎在服务器上面打开数据库,找到mysql库下面的一个user表,反正自己的东西,乱搞嘛,搞坏了重新来就是了。所有请各位朋友仔细看下图,其实就两个地方无法连接云服务器上的MySQL服务

找到user表,我既然在程序里面用的用户名是root,所以修改用户名为root的一行,将Host修改为%。至于为什么是百分号,自行脑补,都是基本操作。这些操作其实都是我根据自己的猜想来完成的,然后打开本地数据库工具进行测试连接。发现还是如此。沃尔玛,简直要疯了。突然不知道从哪儿蹦出来一个想法:在mysql库下面执行了一句话:flush privileges,无法连接云服务器上的MySQL服务认识这两个单词的话应该知道什么意思。执行完后我立即启动程序进行数据操作,天啦噜,竟然成功了。哦也。

这里只想说一句,沃尔玛,还是只有自己实践的东西才是最正确的。沃尔玛,坐等下班。