无法远程连接Mysql数据库

问题引入

笔者在做项目时,需要用到数据库,然后就在一台服务器上搭建了MySQL数据库,本地测试时需要连接到数据库,于是在使用Navicat连接数据库时发现一个问题,无法连接并且报错了,报错代码1130。

之后发现,其实是数据库默认root用户只允许本地登录,未开启远程登录功能,所以需要我们自己设置一下MySQL。

情景还原

书接上文,笔者高高兴兴地打开Navicat,开始连接数据库,然后,一脸懵逼。
这里写图片描述
What?1130?(PS:笔者在操作时忘了截图了,下图来自互联网~orz)

这里写图片描述

图1.Navicat连接数据库报错

错误1130:ERROR 1130: Host ‘ .. ..*’ is not allowed to connect to thisMySQL serve

翻译成大白话就是:你不是老王指定的合法妻子,所以老王不让你进他家。
这里写图片描述
原因:被连接的数据不允许使用 当前的IP访问。
解决方案:登录Mysql,设置

这里写图片描述

图2.设置数据库使其允许远程连接

当然,如果你使用的服务器比较高级的话,还会有类似“安全组”设置什么的,需要将MySQL的3306端口设置为允许入网。
这里写图片描述

图3.设置安全组

这里写图片描述

解决方法

话不多说,直接抛代码:

mysql>use mysql;
mysql>update user set host='%' where user='root' AND host='localhost';
mysql>FLUSH PRIVILEGES;

使用以上方法设置MySQL之后,重启MySQL服务就OK啦~


作者:戴翔
电子邮箱:daixiangcn@outlook.com


daixiangcn CSDN认证博客专家 后端开发工程师 产品体验官
中国公民,中共预备党员,CSDN博客专家,本科大四在读。江苏省第四届“互联网+”大学生创新创业大赛二等奖获得者,第二届、第三届微信小程序应用开发大赛全国三等奖、华东赛区二等奖项目作者,微信小程序《约车吗》、《庆云慈善会》、《锋云速检》项目工程师。
已标记关键词 清除标记
相关推荐
©️2020 CSDN 皮肤主题: 技术工厂 设计师:CSDN官方博客 返回首页