前言:
服务器上的mysql的数据库端口一定是可以被访问的,如果服务器上有防火墙,需要允许该端口被访问,mysql的默认端口通常是3306。
如果不能被访问,会报如下错误:
正文:
一、拒绝访问(错误代码:1130)
1130-Host'192.168.5.100' is not allowed to connent to this MySQL server.
二、解决方案
2.1 查看Mysql 8.0 默认用户情况
mysql> select host,user from user; --查询用户及其对应的访问授权地址
+-----------+------------------+
| host | user |
+-----------+------------------+
| localhost | mysql.infoschema |
| localhost | mysql.session |
| localhost | mysql.sys |
| localhost | root |
+-----------+------------------+
4 rows in set (0.00 sec)
2.2 设置访问权限
仅MYSQL 8.0 以上版本使用
-- 创建用户
CREATE USER 'root'@'%' IDENTIFIED BY 'rootpassword';
-- 授权
grant all privileges on *.* to 'root'@'%' ;
-- 刷新访问权限表
FLUSH PRIVILEGES;
'root'@'%':表示root用户从哪个IP地址过来,可以是指定的IP,也可以是指定的IP地址段。
'创建用户'和'授权代码'中的这两处'root'@'%'要保持一致。
'IDENTIFIED BY 'rootpassword''中的rootpassword是密码。
然后,就可以用你的navicat或其他工具进行测试啦!