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才可以

相关推荐
Python私教8 小时前
从表格到管理系统:别先写页面,先补齐权限、流程和审计
数据库·后端·架构
陈皮波比茶8 小时前
Redis学习
数据库·redis·学习
—Miss. Z—8 小时前
备份与恢复
数据库·oracle
ltl8 小时前
RocksDB Leveled Compaction:层级不变式与 CompactionPicker
数据库
ltl8 小时前
DuckDB 向量化与 Morsel-Driven Pipeline
数据库
NJCloud9 小时前
TiDB 集群部署与 MySQL 兼容性适配实战
linux·运维·数据库·mysql·tidb
喜欢打篮球的普通人9 小时前
LLVM Backend Lowering 从入门到实战:把 IR 变成机器码的完整链路
android·java·数据库
SomeOtherTime11 小时前
Postgresql触发器实现对表的日志审计
数据库·postgresql
这个DBA有点耶12 小时前
Oracle 迁移金仓兼容性评估指南:5 大维度深度拆解
数据库·oracle·架构