MySQL 开启外连

MySQL 开启外连

在数据库安装完后,网页可以访问phpMyAdmin4.8.5,

我以为就可以外连了,但是其实数据库的账号还是默认localhost登录,

无法访问数据库

​从Navicat登录MySQL时报错:1130 Host “xx.xx.xx.xx”is not allowed to connect to this MySQL server

还是无法从外面连接到数据库的

d2b5ca33bd201606

原因分析

报错信息表示:需要连接的数据库不允许其他主机进行访问,

这是因为MySQL的系统数据库mysql中的user表没有配置远程访问主机的登录信息,
只有localhost本地登录的信息(如下图);

d2b5ca33bd202126

 

解决方法

1.登录MySQL

mysql -u root -p

2.进入mysql库

输入use mysql

切换数据库

3.执行更新权限语句

update user set Host=’%’ where User=’root’;

其中“%”代表所有的地址,意味着所有的地址都可以访问“root”

d2b5ca33bd212617

4.查看权限

输入select host,user from user;

查看是否修改成功

d2b5ca33bd212834

5.刷新服务器配置

输入FLUSH PRIVILEGES;

flush privileges 命令本质上的作用是将当前user和privilige表中的用户信息/权限设置从mysql库 (MySQL数据库的内置库)中提取到内存里。

MySQL用户数据和权限有修改后,希望在”不重启MySQL服务”的情况下直接生效,那么就需要执行这个命令。 通常是在修改ROOT帐号的设置后,怕重启后无法再登录进来,那么直接flush之后就可以看权限设置是否生效。 而不必冒太大风险。 mysql 修改密码后,注意flush privileges。

mysql 新设置用户或更改密码后需用flush privileges刷新MySQL的系统权限相关表,否则会出现拒绝访问,还有一种方法,就是重新启动mysql服务器,来使新设置生效。

d2b5ca33bd213011

6.进入Navict测试连接

d2b5ca33bd213023

 

 

 

 

© 版权声明
THE END
喜欢就支持一下吧
点赞10 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称

    暂无评论内容