MySQL不能被其他地址访问,授权问题解决(8.x,,5.x)

首先强调的是两个版本,5版本和8版本问题反馈不一样

Linux系统部署mysql8.4版本

MySQL官网地址写的很清楚了,不多介绍

直接进入主题,恶心了我三个多小时的问题,翻阅大量国内外资料,结果并不是个多么难得问题,心态崩了

赶紧记录。。

mysql5.x版本授权

bash 复制代码
grant all privileges on *.* to testuser@"192.168.1.100" identified by "123456" ;  //设置用户testuser,只能在客户端IP为192.168.1.100上才能远程访问mysql ;
bash 复制代码
flush privileges;

再去连接就可以了

mysql8.x

bash 复制代码
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;
bash 复制代码
GRANT ALL PRIVILEGES ON *.* TO 'root'@'your_remote_ip' WITH GRANT OPTION;

来看报错

bash 复制代码
mysql> grant all privileges on *.* to "root"@"%" identified by "Abc#12341" ;
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'identified by "Abc#12341"' at line 1
bash 复制代码
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;
ERROR 1410 (42000): You are not allowed to create a user with GRANT

最后搜到的解决方式就是直接update user去更改,

据说是不允许通过root@'%',这种写法,

必须写host才可以

相关推荐
焦虑的说说6 分钟前
redis和数据库的一致性如何保证
数据库·redis·缓存
阿狸猿1 小时前
论基于云原生数据库的企业信息系统架构设计
数据库·云原生
MXsoft6182 小时前
**配置自动备份与变更告警:杜绝“黑变更”风险**
网络·数据库
骑士雄师2 小时前
19.3 langgraph的工作节点和路由函数
java·前端·数据库
梓䈑2 小时前
C++ 接入 SQLite 数据库:环境搭建、API 详解 与 两种执行方式对比
数据库·c++·sqlite
曹牧2 小时前
Oracle:CHR
数据库·oracle
TechWayfarer2 小时前
IP精准定位服务在保险行业的接入实践:区域需求洞察与精准服务
数据库·python·tcp/ip·flask
KKKlucifer2 小时前
数据分类分级产品排名解析:场景定制、规则联动、增量更新成核心能力
大数据·数据库·人工智能
minji...2 小时前
MySQL数据库 (七) MySQL表的基本查询(上),insert、replace、select、where、order by
数据库·mysql·select·replace·insert·order by·where
金融RPA机器人丨实在智能3 小时前
数据库运维Agent比价指南:国产自研产品适配国产数据库兼容性更好吗?
运维·数据库·人工智能·ai