今天和朋友讨论一个问题,如果回收权限会立即生效,官方文档

代码函数备忘:
http://mysql.taobao.org/monthly/2018/02/03/
-
GLOBAL级别权限
每个session 初始化建立,函数check_access
sctx->master_access 是从 mysql.user 表中获得的 Global 级别的权限,在用户和数据库建立连接就会初始化,因此是会话级别生效的,修改了不会立即生效 -
DB级别权限,切换库生效(use db)
这里貌似和阿里内核月报说的不一样,acl_get函数,acl_cache好像为一个全局变量,因此修改了就生效,但是切换db才判断
此处:
if (!db_is_pattern && (entry=(acl_entry*) acl_cache->search((uchar*) key, key_length)))

- table级别权限,check_grant函数,没看这个函数,抄袭阿里内核月报,应该是全局变量,立即生效。
网友评论