SQLyog连接Linux上的mysql数据库相关问题的解决

一.问题导入
最近需要在Linux部署项目,需要搭建环境。在Linux下安装好mysql后,重设了密码。最后在使用SQLyog连接mysql过程中产生了一些问题。
SQLyog连接Linux上的mysql数据库相关问题的解决_第1张图片
二.问题分析与解决
分析一:以为是密码问题,重新输入了好几遍,但都不行。在网上看一些类似的解决的博文发现可能是以下两个原因造成这种结果
1.linux中的防火墙对mysql端口3306的拦截

2.mysql没有开启远程访问权限。
对应的解决办法如下:SQLyog连接Linux上的mysql数据库相关问题的解决_第2张图片SQLyog连接Linux上的mysql数据库相关问题的解决_第3张图片
于是重启mysql,发现还是连接不上,还是报相同的错误。
在这里插入图片描述
SQLyog连接Linux上的mysql数据库相关问题的解决_第4张图片
分析二:应该还是密码的问题。
我查询了自己在本地windows机器中MySQL环境中的自带的mysql数据库中的user表信息。发现host中"localhost"与"%"的密码是一模一样的。而且还和我当时设置的6位密码不一样,显然是经过算法加密的。
SQLyog连接Linux上的mysql数据库相关问题的解决_第5张图片
注意:以下是mysql中自带的4个数据库,前三个不要修改,是和mysql运行密切相关的数据库,test是安装过程中,测试生成的数据库,可删除。
SQLyog连接Linux上的mysql数据库相关问题的解决_第6张图片
我又登录linux中,进入mysql,查询相同的信息。
SQLyog连接Linux上的mysql数据库相关问题的解决_第7张图片
发现host中"localhost"与"%"的密码是
不一样
的,这一点和windows中截然相反,而且还和我当时设置的6位密码不一样,也是经过算法加密的。于是编写运行SQL语句将"%"的密码,设置的与"localhost的密码相同
SQLyog连接Linux上的mysql数据库相关问题的解决_第8张图片
重新使用SQLyog成功地连接Linux上的mysql数据库:
SQLyog连接Linux上的mysql数据库相关问题的解决_第9张图片
我又使用SQLyog客户端工具查询了一下user表中的信息:
SQLyog连接Linux上的mysql数据库相关问题的解决_第10张图片我之前的修改生效了,也证实了就是因为host中"localhost"与"%"的密码不一致造成的SQLyog连接Linux不上的mysql数据库。

你可能感兴趣的:(JavaWeb)