mysql
文章平均质量分 83
美丽人生1989
这个作者很懒,什么都没留下…
展开
-
mysql的MVCC与BufferPool缓存机制
MVCC多版本并发控制机制 Mysql在可重复读隔离级别下如何保证事务较高的隔离性,我们上节课给大家演示过,同样的sql查询语句在一个事务里多次执行查询结果相同,就算其它事务对数据有修改也不会影响当前事务sql语句的查询结果。 这个隔离性就是靠MVCC(Multi-Version Concurrency Control)机制来保证的,对一行数据的读和写两个操作默认 是不会通过加锁互斥来保证隔离性,避免了频繁加锁互斥,而在串行化隔离级别为了保证较高的隔离性是通过将所有操 作加锁互斥来实现的。 My原创 2021-12-04 21:11:30 · 204 阅读 · 0 评论 -
Mysql锁与事务隔离级别
概述 数据库一般都会并发执行多个事务,多个事务可能会并发的对相同的一批数据进行增删改查操作,可能就会导致我们说的脏写、脏读、不可重复读、幻读这些问题。 这些问题的本质都是数据库的多事务并发问题,为了解决多事务并发问题,数据库设计了事务隔离机制、锁机制、MVCC多版本并发控制隔离机制,用一整套机制来解决多事务并发问题。 事务及其ACID属性 事务是由一组SQL语句组成的逻辑处理单元,事务具有以下4个属性,通常简称为事务的ACID属性。 原子性(Atomicity) :事务是一个原子操作单原创 2021-12-04 16:56:39 · 738 阅读 · 0 评论 -
Mysql索引优化2
我们业务系统实现分页功能可能会用如下sql实现 select * from employees limit 10000,10; 表示从表 employees 中取出从 10001 行开始的 10 行记录。看似只查询了 10 条记录,实际这条 SQL 是先读取 10010条记录,然后抛弃前 10000 条记录,然后读到后面 10 条想要的数据。因此要查询一张大表比较靠后的数据,执行效率 是非常低的。 常见的分页场景优化技巧: 1、根据自增且连续的主键排序的分页查询 select原创 2021-12-04 12:47:06 · 618 阅读 · 0 评论 -
Mysql索引优化1
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` timestamp.原创 2021-12-04 00:43:20 · 372 阅读 · 0 评论 -
MySQL的内部组件结构
大体来说,MySQL 可以分为 Server 层和存储引擎层两部分。 Server层 主要包括连接器、查询缓存、分析器、优化器、执行器等,涵盖 MySQL 的大多数核心服务功能,以及所有的内置函数(如日期、时间、数学和加密函数等),所有跨存储引擎的功能都在这一层实现,比如存储过程、触发器、视图等。 Store层 存储引擎层负责数据的存储和提取。其架构模式是插件式的,支持 InnoDB、MyISAM、Memory 等多个存储引擎。现在最常用的存储引擎是 InnoDB,它从 MySQL 5....原创 2021-12-03 23:51:26 · 427 阅读 · 0 评论 -
mysql索引实践
1.全值匹配 2.最左前缀法则 如果索引了多列,要遵守最左前缀法则。指的是查询从索引的最左前列开始并且不跳过索引中的列。 3.不在索引列上做任何操作(计算、函数、(自动or手动)类型转换),会导致索引失效而转向全表扫描 4.存储引擎不能使用索引中范围条件右边的列 5.尽量使用覆盖索引(只访问索引的查询(索引列包含查询列)),减少 select * 语句 6.mysql在使用不等于(!=或者<>),not in ,not exists原创 2021-12-03 23:28:19 · 337 阅读 · 0 评论 -
Explain详解与索引实践
Explain工具介绍 使用EXPLAIN关键字可以模拟优化器执行SQL语句,分析你的查询语句或是结构的性能瓶颈 在 select 语句之前增加 explain 关键字,MySQL 会在查询上设置一个标记,执行查询会返回执行计划的信息,而不是执行这条SQL 注意:如果 from 中包含子查询,仍会执行该子查询,将结果放入临时表中 Explain分析示例 参考官方文档:https://dev.mysql.com/doc/refman/5.7/en/explain-output.htm原创 2021-12-03 21:40:58 · 133 阅读 · 0 评论 -
mysql索引底层数据结构与算法
索引是帮助MySQL高效获取数据的排好序的数据结构原创 2021-11-26 10:54:27 · 228 阅读 · 0 评论