MySQL-进阶篇 MySQL体系结构存储引擎层MySQL默认使用innoDB存储引擎innoDBMySIMMemory区别索引索引结构索引分类索引语法性能优化查询增删改查使用频次explaintype中各个关键字代表的情况:NULL:不访问任何表或索引;system:访问系统表const:通过主键或者唯一索引访问数据,等值匹配,最多匹配一行eq_ref:多表联查且被驱动表用主键或者唯一索引等值匹配,每次连接只能拿到一行;ref:使用普通索引做等值查询,会匹配多行;range:索引上做范围查询;index:全索引扫描;ALL:全表扫描索引使用最左前缀法则查询联合索引时遵守最左前缀法则才会引用索引;范围查询会导致失效,但是和不会失效索引列运算字符串不叫引号模糊查询or连接的条件数据分布影响SQL提示覆盖索引前缀索引单列索引和联合索引因为最左前缀法则的原因,创建联合索引时,要考虑好创建的顺序设计原则其他SQL优化insert优化1,批量插入2,手动事务提交3,主键顺序插入大批量插入数据主键优化order by优化limit优化count优化update优化要根据有索引的字段去更新数据视图语法检查选项cascaded:如果使用cascaded,那么加入数据时,不仅会检查当前视图的条件,还会判断是否满足当前视图所依赖的视图的创建条件;更新作用存储过程语法变量系统变量用户自定义变量局部变量其他语法if参数case示例whilerepeatloop游标条件处理程序存储函数触发器语法示例锁全局锁表级锁表锁加了读锁,所有客户端都可以读,但是都不能写加了写锁,自己能读写,其他客户端不能读也不能写元数据锁意向锁行级锁行锁间隙锁/临界锁InnoDB引擎架构内存结构缓冲池脏页详解:就是在缓存中已经被修改,但还没有来得及写到磁盘中的数据;改变缓冲池change Buffer属于Buffer Pool,专门针对于二级索引的写入操作进行缓冲合并,通过将随机i/o转换为顺序i/o来提升性能日志缓冲区磁盘结构系统表空间独立表空间通用表空间撤销表空间临时表空间双写缓冲区重做日志后台线程事务原理直接回去看视频81. 进阶-InnoDB引擎-事务原理-概述_哔哩哔哩_bilibiliMVCC一样84. 进阶-InnoDB引擎-MVCC-基本概念_哔哩哔哩_bilibiliMySQL管理系统数据库常用工具