带你详细了解Mysql数据库优化

Mysql讲解目录

提示:本次数据库优化等



一.数据库事务的四大特征

  1. 原子性:强调事务的不可分割
  2. 一致性:强调的是事务的执行的前后,数据的完整性要保持一致
  3. 隔离性:一个事务的执行不应该受到其他事务的干扰
  4. 持久性:事务一旦结束(提交/回滚)数据就持久保持到了数据库

二.Mysql的优化

  1. 数据库设计要合理(满足三范式)
    第一范式:数据达到原子性,使数据不可再分
    第二范式:属性完全依赖主键,必须先满足第一范式,使每一行数据具有唯一性
  2. 适当添加索引
  3. 读写分离

三.Mysql的索引

1.什么是索引

 建立索引可以加速数据库查询


2.Mysql有哪些索引


 普通索引·主键索引·唯一索引·全文索引·多列索引

3.索引失效的条件

  1. 查询的条件中有or
  2. 对于多列索引,不是使用的第一部分,则不会使用索引
  3. like查询使用%开头
  4. 如果查询列是字符串,那么在条件中必须使用单引号引用起来
  5. mysql使用全盘扫描比使用索引快的话,索引也是失效的

4.索引的优缺点

优点

  1. 建立索引的列可以保证行的唯一性,生成唯一的rowId
  2. 索引可以有效缩短数据的检索时间,减少I/O次数
  3. 索引可以加快表与表之间的连接
  4. 为用来排序和分组的字段建立索引可以加快分组和排序

缺点
5. 创建索引和维护索引需要时间成本,成本随着数据量增大而加大
6. 创建索引和维护索引需要空间成本,每一条索引都需要占据数据库的物理存储空间,数据量越大,占用空间也越大
7. 会降低表的增删改的效率,每次增删改,索引需要进行动态维护


5.一张表最多可以创建多少个索引

 最多16个,每个索引最大长度256字节


6.MySql中的聚合函数

  1. count(col): 表示求指定列的总行数
  2. max(col): 表示求指定列的最大值
  3. min(col): 表示求指定列的最小值
  4. sum(col): 表示求指定列的和
  5. avg(col): 表示求指定列的平均值

四.DDL,DML,DCL的区别和理解

DDL (data definition language)数据库结构操作语言
   主要有create alter drop
DML (data manipulation language)数据库数据操作语言
    主要有Select update delete insert
DCL (data contrl language)数据库控制功能操作语言
    主要有grant deny revork

总结

今天就分享到这里,欢迎大家补充,交流。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值