前言
还是之前说的项目,环境现在已经准备好了,在项目准备验证阶段发现一个问题,从上层应用进入的认证访问申请一直处于等待状态,输入了正确的用户名和密码,但是就是访问不了,好像是没有办法访问数据库连接。
部署之后MySQL的端口一般是3306,尝试ping 3306端口,发现可以ping通IP,但是无法ping通3306端口,并且给出如下错误信息:
错误 1130:MySQL 无法访问主机 *.*.*.*
看到这个错误之后我在网上搜了一下,发现解决办法基本上有很多,但是为什么我需要专门写一下呢?
答案是:针对.6网上有很多解决办法,在5.7中,这个错误的解决办法如下:
1、首次登录MySQL后,需要及时修改root密码,5.6和5.7有区别,5.6中密码字段为:,但是在5.7版本中该字段被取消,取而代之的是:g字段。
正确的修改方法是:
用户设置 g=("xxxx") 其中用户 = "root";
冲洗;
2.修改完之后我们使用use mysql命令切换到mysql库,注意这个mysql库是真实存在于mysql中的,里面存储了一些db相关的信息。
命令:use mysql;
3.找到用户表并执行以下命令:
授予 'JLwg!2017' 对 'root'@'%' 的所有 *.* 权限;
网上有很多修改这个的方法,总共应该有4个,我用的是其中的一个。
这个命令的意思是修改root用户的访问权限,让所有IP地址都可以访问这个用户。这样我们的应用程序就可以从外部的IP地址来访问这个mysql了。不然只能访问的话,很不方便。
4、最后执行flush;命令重启Mysql服务,应用程序就能登录成功了。
总结
以上就是本文的全部内容了,希望本文的内容能对大家的学习或者工作带来一些帮助,如果还有疑问可以留言交流,感谢大家对脚本之家的支持。
扫一扫在手机端查看
我们凭借多年的网站建设经验,坚持以“帮助中小企业实现网络营销化”为宗旨,累计为4000多家客户提供品质建站服务,得到了客户的一致好评。如果您有网站建设、网站改版、域名注册、主机空间、手机网站建设、网站备案等方面的需求,请立即点击咨询我们或拨打咨询热线: 13761152229,我们会详细为你一一解答你心中的疑难。