高权限账号:一个实例只能创建一个,可以管理所有普通账号和数据库。 普通账号:一个实例中可以创建多个,需要手动给普通账号授予特定数据库的权限。
说明
关于账号权限的具体信息,请参见账号权限说明。
不可以,高权限账号默认拥有所有数据库的所有权限,仅支持在控制台上重置为初始状态。只能为普通账号修改账号权限。
可以。
报错信息:
mysql> GRANT SELECT, SHOW DATABASES, REPLICATION SLAVE, REPLICATION CLIENT ON *.* TO 'test123'; ERROR 1045 (28000): Access denied for user 'admin_root'@'%' (using password: YES)
不支持为普通用户授予 SHOW DATABASES
权限。
grant
命令直接创建用户授权失败了?报错信息:
mysql> grant select,insert,update,delete on `testdb1`.`auth_role` to 'testuser'@'%'; ERROR 1410 (42000): You are not allowed to create a user with GRANT
这个报错是因为社区 MySQL 8.0 不再支持通过 grant 命令直接创建用户了,MySQL 8.0 下线了该功能,详情请参见 MySQL 官方文档。
解决方案:
您可以先创建用户,再为用户授权。语法参考如下:
-- 创建用户 mysql> create user 'testuser' identified by 'Root****'; Query OK, 0 rows affected (0.01 sec) -- 授权 mysql> grant select,insert,update,delete on `testdb1`.`auth_role` to 'testuser'; Query OK, 0 rows affected (0.00 sec)