MySQL
好运的云
一个头脑简单的人
展开
-
MySQL高级篇笔记(四)锁机制
文章目录四、MySQL锁机制1. 概述1.1. 定义1.2. 生活例子2. 锁的分类2.1. 从对数据操作的类型分类2.2. 从对数据操作的颗粒度分类3. 三锁3.1. 表锁(偏读)3.1.1. 特点3.1.2. 案例分析3.1.3. 分析表锁定3.2. 行锁(偏写)3.2.1. 行锁特点3.2.2. 事务特点3.2.3. 并发处理事务带来的问题3.2.4. 事务隔离级别3.2.5. 案例分析3.2.6. 行锁分析3.2.7. 面试题:如何锁定一行3.2.8. 行锁总结3.3. 页锁(了解)3.2.7. 面原创 2020-09-06 16:41:34 · 154 阅读 · 1 评论 -
快速理解脏读、不可重复读和幻读
MySQL的InnoDB引擎是支持事务的,但是并发事务的处理又会带来以下问题:脏读不可重复度幻读一、脏读脏读指事务A读取到了事务B更新了但是未提交的数据,然后事务B由于某种错误发生回滚,那么事务A读取到的就是脏数据。具体的说,一个数据原本是干净的,但是事务B将它进行修改使得其不再干净,此时事务A读取到事务B修改后的数据,也就是脏数据,称为脏读,后来事务B由于良心发现又将数据回滚为最初的样子,而事务A不知道事务B进行了回滚操作,最终事务A读取到的是脏数据,称为脏读。结论:读取未提交的数据!原创 2020-09-04 21:38:21 · 7595 阅读 · 6 评论 -
MySQL高级篇笔记(三)查询截取分析
文章目录三、查询截取分析1、查询优化(1)小表驱动大表(2)order by关键字优化(3)group by关键字优化2、慢查询日志(1)慢查询日志是什么?(2)慢查询日志的用法3、日志分析工具mysqldumpslow(1)查看mysqldumpslow的帮助信息(2)工作常用参考4、批量数据脚本(1)创建表(2)创建函数(3)创建存储过程(4)调用存储过程5、Show Profile(1)分析步骤(2)参数说明(3)日常开发6、全局查询日志(1)配置启用(2)编码启用(3)永远不要在生产环境开启此功能6原创 2020-08-29 14:18:20 · 265 阅读 · 0 评论 -
MySQL高级篇笔记(一)MySQL存储引擎
文章目录一、存储引擎介绍1、MyISAM2、InnoDB3、两种存储引擎的对比一、存储引擎介绍1、MyISAMMyISAM提供了大量的特性,包括全文索引、压缩、空间函数(GIS)等,但MyISAM 不支持事务和行级锁(MyISAM改表时会将整个表全锁住) ,有一个毫无疑问的缺陷就是崩溃后无法安全恢复MyISAM管理非事务表,所以关注点在于性能上,可以提供高速存储和检索,支持全文搜索那么为什么MyISAM会比InnoDB快呢? [待做]2、InnoDBInnoDB是MySQL的默认事务型引擎原创 2020-08-20 15:57:36 · 202 阅读 · 0 评论 -
MySQL高级篇笔记(二)索引优化分析
二、索引优化分析1、性能下降、SQL慢、执行时间长、等待时间长的原因查询语句写的差索引失效单值索引:新建索引的语句只实施在一列上复合索引:在多个列上建立索引关联查询太多join(设计缺陷或不得已的需求)服务器调优及各个参数设置(缓冲\线程数等)2、索引简介(1)索引是什么MySQL官方对索引的定义为:索引是帮助MySQL高效获取数据的数据结构,所以索引的本质是:数据结构,可以理解为排好序的快速查找数据结构索引的目的在于提高查询效率,可以类比字典,如果要查“mysql”这个原创 2020-08-20 17:01:46 · 313 阅读 · 0 评论