问题描述
MysqL 版本
select @@version;
8.0.18
创建用户
create user 'user1'@'%' identified by 'user1_pwd';
创建数据库
drop database if exists test_db;
create database test_db
character set utf8mb4
collate utf8mb4_0900_ai_ci;
授予权限
grant XA_RECOVER_ADMIN on test_db.* to 'user1'@'%';
错误信息
[HY000][3619] Illegal privilege level specified for XA_RECOVER_ADMIN
我能做什么?我可以使用新用户来授予 XA_RECOVER_ADMIN 而不是 root 权限吗?
解决方法
XA_RECOVER_ADMIN 是全局权限(管理员通常全局操作),这意味着它不能授予特定数据库。
代替
grant XA_RECOVER_ADMIN on test_db.* to 'user1'@'%';
你必须使用
grant XA_RECOVER_ADMIN on *.* to 'user1'@'%';