服务器MYSQL数据库开启远程访问

windows下mysql管理神器navicat远程登录MySQL时提示无法链接,除了排除防火墙是否开放3306端口外,就需要检查授权是否正确。

默认的账号的host属性都是localhost,意思是这个账号只能本地使用,如果要使用某个账号来远程登录,必须将账号的host属性值更改成%。

允许所有IP访问

当你远程登录MySQL时,使用的账号要有特殊要求。

默认的账号的host属性都是localhost,意思是这个账号只能本地使用,如果要使用某个账号来远程登录,必须将账号的host属性值更改成%。

a,进入数据库:

mysql -u root -p

b,切换到 mysql库:

use mysql;

c,查看用户表,看到当前host是localhost,只允许本地访问。

MySQL [mysql]> select host,user from user;
+-----------+---------------+
| host      | user          |
+-----------+---------------+
| 127.0.0.1 | root          |
| localhost | mysql.session |
| localhost | mysql.sys     |
| localhost | root          |
+-----------+---------------+
4 rows in set (0.00 sec)

d,更新user用户表:

mysql> update user set host = '%' where user = 'root';

e,强制刷新权限:

mysql> flush privileges;

f,再次查看用户表,root用户的host变成%,即允许所有的ip远程访问,如果需要指定具体的ip,就写上具体的ip即可。

MySQL [mysql]> select host,user from user;
+-----------+---------------+
| host      | user          |
+-----------+---------------+
| %         | root          |
| 127.0.0.1 | root          |
| localhost | mysql.session |
| localhost | mysql.sys     |
+-----------+---------------+
4 rows in set (0.00 sec)

执行的sql语句如下:

update user set host = '%' where user = 'root';

 上一篇
Nginx常用配置,开箱即用 Nginx常用配置,开箱即用
Nginx常用配置,开箱即用最近在网上开了个店铺,提供付费技术支持。经常接到Nginx安装和配置的单。这里笔者将常用配置统统写在下面,方便咱们日常使用。 这里本着开箱即用的原则,所以大多数时候不会解释为什么要这样去配置,也不涉及Nginx的
2021-12-08
下一篇 
openwrt软路由无法访问国内网站的解决方法 openwrt软路由无法访问国内网站的解决方法
问题主路由拨号,旁路由装openwrt挂在主路由下。软路由内装“出国访问”,但是各个客户端设备有无法访问国内网站。全局可以访问国内优酷、爱奇艺、腾讯等国内网站,其他模式均无法访问,重装固件也是如此,折腾了几个小时终于找到解决方法…. 解决
2021-12-03
  目录