![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Mysql
文章平均质量分 72
Mysql
撸代码的小吴
这个作者很懒,什么都没留下…
展开
-
深入理解MVCC与BufferPool缓存机制
MVCC多版本并发控制机制Mysql在可重复读隔离级别下如何保证事务较高的隔离性,我们上节课给大家演示过,同样的sql查询语句在一个事务里多次执行查询结果相同,就算其它事务对数据有修改也不会影响当前事务sql语句的查询结果。这个隔离性就是靠MVCC(Multi-Version Concurrency Control)机制来保证的,对一行数据的读和写两个操作默认是不会通过加锁互斥来保证隔离性,避免了频繁加锁互斥,而在串行化隔离级别为了保证较高的隔离性是通过将所有操作加锁互斥来实现的。Mysql在读原创 2021-10-11 22:12:26 · 83 阅读 · 0 评论 -
深入理解Mysql事务隔离级别与锁机制
概述我们的数据库一般都会并发执行多个事务,多个事务可能会并发的对相同的一批数据进行增删改查操作,可能就会导致我们说的脏写、脏读、不可重复读、幻读这些问题。这些问题的本质都是数据库的多事务并发问题,为了解决多事务并发问题,数据库设计了事务隔离机制、锁机制、MVCC多版本并发控制隔离机制,用一整套机制来解决多事务并发问题。接下来,我们会深入讲解这些机制,让大家彻底理解数据库内部的执行原理。事务及其ACID属性事务是由一组SQL语句组成的逻辑处理单元,事务具有以下4个属性,通常简称为事务的ACID原创 2021-10-11 22:08:24 · 199 阅读 · 0 评论 -
Mysql索引优化实战二
分页查询优化示例表:CREATE TABLE `employees` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(24) NOT NULL DEFAULT '' COMMENT '姓名', `age` int(11) NOT NULL DEFAULT '0' COMMENT '年龄', `position` varchar(20) NOT NULL DEFAULT '' COMMENT '职位', `hire_time`原创 2021-10-06 13:05:34 · 914 阅读 · 0 评论 -
Mysql索引优化实战一
示例表1 CREATE TABLE `employees` (2 `id` int(11) NOT NULL AUTO_INCREMENT,3 `name` varchar(24) NOT NULL DEFAULT '' COMMENT '姓名',4 `age` int(11) NOT NULL DEFAULT '0' COMMENT '年龄',5 `position` varchar(20) NOT NULL DEFAULT '' COMMENT '职位',6 `hire_time` ti原创 2021-10-04 22:36:22 · 75 阅读 · 0 评论 -
一条SQL在MySQL中是如何执行的
MySQL的内部组件结构大体来说,MySQL 可以分为 Server 层和存储引擎层两部分。Server层主要包括连接器、查询缓存、分析器、优化器、执行器等,涵盖 MySQL 的大多数核心服务功能,以及所有的内置函数(如日期、时间、数学和加密函数等),所有跨存储引擎的功能都在这一层实现,比如存储过程、触发器、视图等。Store层存储引擎层负责数据的存储和提取。其架构模式是插件式的,支持 InnoDB、MyISAM、Memory 等多个存储引擎。现在最常用的存储引擎是 InnoDB,它原创 2021-10-04 22:27:21 · 144 阅读 · 0 评论 -
Mysql-索引原理与Explain详解
以下内容仅供本人使用Explain工具介绍使用EXPLAIN关键字可以模拟优化器执行SQL语句,分析你的查询语句或是结构的性能瓶颈 在 select 语句之前增加 explain 关键字,MySQL 会在查询上设置一个标记,执行查询会返回执行计划的信息,而不是 执行这条SQL注意:如果 from 中包含子查询,仍会执行该子查询,将结果放入临时表中Explain分析示例参考官方文档:https://dev.mysql.com/do...原创 2021-09-29 22:19:22 · 89 阅读 · 0 评论