MySql教程

【学习打卡】第10天 MySQL8.0版本新特性

本文主要是介绍【学习打卡】第10天 MySQL8.0版本新特性,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

课程章节:第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


注意:主键索引无法设置为隐藏索引

https://img1.sycdn.imooc.com/62f4cda700010c0611900765.jpghttps://img3.sycdn.imooc.com/62f4cf2b000152bb13840707.jpg

这篇关于【学习打卡】第10天 MySQL8.0版本新特性的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!