数据库-进阶

一、存储引擎

1.MySQL体系结构

2.存储引擎简介

一个数据库下的多张表可以选择不同的存储引擎

在建表的时候没有指定存储引擎默认InnoDB

3.存储引擎特点

1)InnoDB

默认打开innodb_file_per_table:每一张表对应一个表空间文件

查看系统变量

从idb文件当中提取sdi表结构数据

ibd属于表空间文件,在innodb中page页是磁盘操作的最小单元,一个区Extent大小为1M,一个页page的大小为16K

2)MyISAM

可以打开sdi表文件,里面是json格式

3)Memory

4)各自的区别

4.存储引擎选择

目前MyISAM被MongoDB取代了,MEMORY被redis取代了

5.存储引擎总结

二、索引

1.索引概述

2.索引结构

1)Btree

2)B+Tree

3)Hash

4)思考题

3.索引分类

1)索引分类

2)思考题

高度为3时就能存放2000多万记录了,如果记录超出了2000万条建议分库分表

4.索引语法

一个索引创建一个字段叫单列索引,一个索引创建多个字段叫联合索引(组合索引、多列索引)

5.SQL性能分析

1)SQL执行频率

一个下划线代表一个字符,注:这边指令输入了7个字符

2)慢查询

1.查看慢查询日志是否开启

2.进入配置

3.查看超过配置时间的sql记录

3)profile

1.查看当前数据库是否支持

2.查看profile是否开启,默认为0,未开启

3.开启profile

4.profile指令

1.查看sql耗时情况

2.查看指定sql各个阶段耗时情况

3.查看指定sql各个阶段cpu耗费情况

4)explain

1.查看sql执行计划

2.各个类型的含义
1.id含义:

需要多表查看

通过子查询查询选修了MySql课程的学生

2.select_type

3.type

null-在无访问表时

system-在访问系统表时

const-在访问主键或唯一索引时

ref-在使用非唯一性的索引进行查询时

4.possible_key

5.其他

6.使用规则

1)最左前缀法则

2)范围查询

3)索引失效情况
1.索引列运算

2.字符串不加引号

3.模糊查询

4.or连接的条件

5.数据分布影响

4)SQL提示

use建议;ignore忽视;force必须

5)覆盖索引

6)思考题

对username,password,status建联合索引

7)前缀索引

8)单列索引&联合索引

7.索引设计原则

8.索引总节

三、SQL优化

1.插入数据

2.主键优化

1.页分裂

2.页合并

3.主键设计原则

3.order by优化

4.group by优化

5.limit优化

6.count优化

7.update优化

一侧

另一侧

一侧

另一侧

一侧

另一侧

没有更新,是因为name字段没有索引,加的是表锁,不是行锁

一侧

另一侧

commit释放了,所以可以更新了

一侧

另一侧

8.总结

四、视图

1.介绍及基本语法

1.创建视图

2.查询视图

3.修改视图

4.删除视图

2.检查选项

1.cascaded

2.local

3.更新及作用

1.更新

2.作用

4.案例

五、存储过程

1.介绍

2.基本语法

3.变量

1)系统变量

2)用户自定义变量

3)局部变量

4.if判断

5.参数

6.case

7.循环

1)while

2)repeat

3)loop

8.游标

9.条件处理程序

六、存储函数

七、触发器

1.介绍

2.案例

1)insert类型

2)update类型

3)delete类型

3.视图&存储过程&触发器-小节

八、锁

1.介绍

2.全局锁

1)介绍

2)一致性数据备份

3.表级锁

1)表锁

2)元数据锁

3)意向锁

4)意向锁测试

4.行级所

1)介绍

2)行锁

3)间隙锁&临键锁1

4)间隙锁&临键锁2

5.小结

九、InnoDB引擎

1.逻辑存储结构

2.架构

1)内存结构1

2)内存结构2

3)磁盘结构

4)后台线程

3.事务原理

1)概述

2)redolog

3)undolog

4.MVCC

1)基本概念

2)隐藏字段

3)undolog版本链

4)readview介绍

5)原理分析(RC级别)

6)原理分析(RR级别)

5.小结

十、MySQL管理

1.系统数据库介绍

2.常用工具1

3.常用工具2

4.小结

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值