课程章节:第2章第4节角色管理、第3章 优化器索引
主讲老师:董旭阳(Tony.Dong)
课程内容:
今天学习的内容:
角色授权给用户,查看用户有哪些权限,权限角色回收(revoke)
优化器索引:隐藏索引
课程收获:
角色授权给用户:grant '角色' to '用户';
显示有用户那些权限:show grants for '用户名';
扩展命令:show grants for '用户名' using '角色名';
显示当前用户已激活的角色:select current_role();
设定角色(类似于激活):set role '角色名';
设置默认角色,下次登录就可以用:set default role '角色名' to '用户';---授权所以角色:set default role all to '用户';
查询默认权限:select * from mysql.default_roles;
回收权限:revoke insert,delete,update on db_name.* from '角色名'
隐藏索引的用处:软删除(不是真正的删除,查询优化器不走隐藏索引而已(这个可以通过参数设置),这是为了防止误删或者删除后发现索引还需要使用,或者确定索引彻底不用了再将索引删除的一个过渡阶段(本人理解,非老师的观点))、灰度发布(隐藏索引不影响生产查询效率)
创建索引方法:create index index_name on 表名(字段名);
创建隐藏索引方法:create index index_name on 表名(字段名) invisible;
查看索引:show index from 表名;
mysql> show index from t1;
试试在结尾加\G是什么效果(行转列)
mysql> show index from t1\G;
设置索引可见和不可见:
alter table 表名 alter index 索引名 visible;
alter table 表名 alter index 索引名 invisible
注意:主键索引无法设置为隐藏索引