
mysql
文章平均质量分 88
易(Master Yi)
这个作者很懒,什么都没留下…
展开
-
mybatis源码阅读与设计模式分析
mybatis 源码阅读 SqlSessionFactory.openSession原创 2021-03-29 23:55:45 · 234 阅读 · 0 评论 -
为什么有了binlog还要有redo log
为什么有了binlog还要有redo log?binlog会记录所有与MySQL数据库有关的日志记录,包括InnoDB, MyISAM,Heap等其他存储引起的日志。而redo log只记录innodb引擎本身的日志。binlog记录的是关于一个事务的具体操作内容,即该日志是逻辑日志。而redolog记录的是关于每个页的更改的物理情况。写入时间不同。binlog仅在事务提交前提交,只写磁盘一次,不论这个事务有多大。而redolog在事务进行过程中会不停的写入。它们分工是不同的。binlog用来做原创 2020-12-07 23:03:04 · 4853 阅读 · 0 评论 -
mysql innodb sql语句加锁分析及锁兼容矩阵
阅读本文可能需要先了解下什么是gap锁,什么是next-key lock.加锁分析及锁兼容矩阵官方文档中对于sql语句的加锁描述锁的兼容矩阵官方文档中对于sql语句的加锁描述SLELCT … FROM前三种级别不加锁,SERIALIZABLE级别下,会对SELECT 默认带上LOCK IN SHARE MODE,S锁SELECT…FOR UPDATE / SELECT … LOCK IN SHARE MODE扫描到的行都会加上锁(不符合where子句条件的记录锁会被释放)SELEC原创 2020-06-14 17:52:22 · 1650 阅读 · 0 评论 -
mysql索引-进阶篇(为查询创建索引)
数据库索引设计系列1、为SELECT语句创建索引三星索引--理想的索引实例例子1 (简单sql的三星索引):例子2(范围谓词和三星索引):一些建议:注释注释1,回表很多调优人员(尽管没经验)认为,如果一个SQL语句使用了索引,那这个SQL就是被很好地优化过的,我对此感到很惊讶。你应该总是问自己,“这是不是可用的最好的索引?”或“再添加另外一个索引能否提升响应性能?”,又或者“全表扫描会不会更快地返回结果?”这是一个系列~ 会持续更新1、为SELECT语句创建索引三星索引–理想的索引第一颗星:原创 2020-05-16 19:38:44 · 685 阅读 · 0 评论 -
mysql 存储过程的使用
1、什么是存储过程存储过程就是一组为完成某项特定功能的sql语句集。按我的理解,就是一个封装好的方法,可以被访问。2、为什么要用存储过程这里就应该讲到存储过程的高性能。存储过程执行一次后,其执行规划就驻留在高速缓冲存储器中,在以后的操作,会直接从高速缓存中调用已经编译好的二进制代码,提高效率。3、存储过程的创建以下通过一个小例子说明,将逐行解释。Delimite...原创 2018-07-29 12:24:49 · 522 阅读 · 0 评论 -
mysql 存储引擎InnoDB(二)索引
mysql Innodb 引擎-索引一、索引类型二、组合索引三、其他简介:索引可以包含一个或多个列的值。如果索引包含多个列,那么列的顺序也十分重要。MySQL只能高效地使用索引的最左前缀列。下面会有详细的介绍。大家都知道索引能让服务器快速定位到表的指定位置,但着不是所有的唯一作用。使用索引有如下三大优点:索引大大减少了服务器需要扫描的数据量。索引可以帮助服务器避免排序和临时表。索引可...原创 2018-09-18 14:32:46 · 477 阅读 · 0 评论 -
mysql 存储引擎 innodb(一) 简单介绍
一、MVCC(Multi-Version Concurrency Control)简介:MVCC(Multi-Version Concurrency Control)多版本并发控制。特点,读不加锁,读写不冲突。1. mvcc读操作快照读 (snapshot read): 读取的是记录的可见版本 (有可能是历史版本),不用加锁当前读 (current read):读取的是记录的...原创 2018-09-14 15:38:54 · 1956 阅读 · 0 评论