ERROR 1044 (42000): Access denied for user/非root角色受权用户找不到已创建数据库
没有权限,网上大部分说是
而要通过关闭mysql效劳等绕过权限。
但我是在设计数据库实验过程中,设计的用户通过角色受权,在验证用户权限时,发现用户找不到已创建数据库,使用
use 数据库名
时报ERROR 1044 (42000): Access denied for user错误,其实是 角色受权用户 需要通过(临时)激活用户的角色权限,- #root下执行
- SET DEFAULT ROLE ALL TO 用户;
- #退出,重新登录
- #SELECT CURRENT_ROLE();
复制代码 永久激活语句如下:- SET global activate_all_roles_on_login=ON;
复制代码 两者区别是
非永久只是激活了用户的角色;而永久激活语句里global是这个语句对整个数据库管理系统都适用,以后不用再激活。
|
|
|
|
|