![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
MySQL
文章平均质量分 61
sushuiyuzhou
这个作者很懒,什么都没留下…
展开
-
mysql qcache MySQL缓存之Qcache与buffer pool对比
Q:innodb buffer pool和Qcache的缓存区别?A:1、Qcacche缓存的是SQL语句及对应的结果集,缓存在内存,最简单的情况是SQL一直不重复,那Qcache的命令率肯定是0;2、buffer pool中缓存的是整张表中的数据,缓存在内存,SQL再变只要数据都在内存,那么命中率就是100%。一、查询缓存(QueryCache)1、关于查询缓存机制开启了缓存,会自动将查询语句和结果集返回到内存,下次再查直接从内存中取;查询缓存会跟踪系统中每张表,若表发生变化,转载 2021-05-28 11:18:10 · 349 阅读 · 0 评论 -
MySQL事务:ACID特性的实现原理(redo log 与 undo log)
ACID特性的实现原理ACID特性的实现原理 1、背景(什么是事务) 2、四大特性(ACID)2.1、原子性(Atomicity) 2.1.1、定义 2.1.2、undo log(回滚日志) 2.2、持久性(Durability ) 2.2.1、定义 2.2.2、redo log(重做日志) 2.3、隔离性(Isolation) 2.3.1、定义 2.3.2、锁机制(后续详细介绍) 2.3.3、并发读写问题 2.3.4、事务隔离级别 2.3.5、M转载 2021-05-02 15:45:53 · 276 阅读 · 0 评论 -
Innodb 行锁与表锁
行锁与表锁InnoDB默认是行级别的锁,当有明确指定的主键时候,是行级锁。否则是表级别。#for update的注意点for update 仅适用于InnoDB,并且必须开启事务,在begin与commit之间才生效。要测试for update的锁表情况,可以利用MySQL的Command Mode,开启二个视窗来做测试。1、只根据主键进行查询,并且查询到数据,主键字段产生行锁。begin;select * from goods where id = 1 for update;c转载 2020-12-22 10:44:51 · 1511 阅读 · 0 评论 -
MySQL索引原理 B+Tree
原创 2020-09-07 17:48:37 · 87 阅读 · 0 评论