“InnoDB的关键特性”的版本间差异

来自Wikioe
跳到导航 跳到搜索
(建立内容为“category:MySQL == 关于 ==”的新页面)
 
(Eijux移动页面InnoDB的三个关键特性InnoDB的关键特性,不留重定向)
 
(未显示同一用户的2个中间版本)
第1行: 第1行:
[[category:MySQL]]
[[category:MySQL]]


== 关于 ==
== 关于 InnoDB ==
关于 InnoDB 存储引擎:
* 5.5.8 版本开始,InnoDB 是 mysql 默认的存储引擎。
* InnoDB 使用“多版本并发控制”(MVCC)来获得并发性。
* InnoDB 使用“临键锁”(next-key-locking)策略来避免幻读现象产生。
* InnoDB 是第一个完全支持 ACID 事务的 mysql 存储引擎。
* InnoDB 存储引擎支持事务,其特点是“行锁”设计,支持“事务”,支持“非锁定读”。
* InnoDB 实现了 SQL 的四种隔离级别,默认是“REPEATABLE”。
* InnoDB 还提供了一些等高性能和高可用功能:
** “'''插入缓存'''”(Insert Buffer),
** “'''二次写'''”(Double Write),
** “'''自适应哈希索引'''”(Adaptive Hash Index),
** “'''异步IO'''”(Async IO),
** “'''刷新邻接页'''”(Flush Neighbor Page)【“预读”的原理】
 
 
 
 
【关于“插入缓存”、“二次写”、“自适应哈希索引”三个部分,网上文章都和我从MySQL手册上理解的大相径庭,实在难以相信】
 
== 插入缓冲(Insert Buffer) ==
* 见:“'''[http://wiki.eijux.com/InnoDB%EF%BC%9AInnoDB_%E5%86%85%E5%AD%98%E7%BB%93%E6%9E%84#Change_Buffer.EF.BC.88.E6.9B.B4.E6.94.B9.E7.BC.93.E5.86.B2.E5.8C.BA.EF.BC.89 InnoDB 内存结构:Change Buffer(更改缓冲区)]'''”
 
== 二次写(Double Write) ==
* 见:“'''[http://wiki.eijux.com/InnoDB%EF%BC%9AInnoDB_%E7%A3%81%E7%9B%98%E7%BB%93%E6%9E%84#Doublewrite_Buffer.EF.BC.88.E5.8F.8C.E5.86.99.E7.BC.93.E5.86.B2.E5.8C.BA.EF.BC.89 InnoDB 磁盘结构:Doublewrite Buffer(双写缓冲区)]'''”
 
== 自适应哈希索引(Adaptive Hash Index) ==
* 见:“'''[http://wiki.eijux.com/InnoDB%EF%BC%9AInnoDB_%E5%86%85%E5%AD%98%E7%BB%93%E6%9E%84#Adaptive_Hash_Index.EF.BC.88.E8.87.AA.E9.80.82.E5.BA.94.E5.93.88.E5.B8.8C.E7.B4.A2.E5.BC.95.EF.BC.89 InnoDB 内存结构:Adaptive Hash Index(自适应哈希索引)]'''”
 
== 异步IO(Async IO) ==
 
== 刷新邻接页(Flush Neighbor Page) ==

2021年4月28日 (三) 00:36的最新版本


关于 InnoDB

关于 InnoDB 存储引擎:

  • 5.5.8 版本开始,InnoDB 是 mysql 默认的存储引擎。
  • InnoDB 使用“多版本并发控制”(MVCC)来获得并发性。
  • InnoDB 使用“临键锁”(next-key-locking)策略来避免幻读现象产生。
  • InnoDB 是第一个完全支持 ACID 事务的 mysql 存储引擎。
  • InnoDB 存储引擎支持事务,其特点是“行锁”设计,支持“事务”,支持“非锁定读”。
  • InnoDB 实现了 SQL 的四种隔离级别,默认是“REPEATABLE”。
  • InnoDB 还提供了一些等高性能和高可用功能:
    • 插入缓存”(Insert Buffer),
    • 二次写”(Double Write),
    • 自适应哈希索引”(Adaptive Hash Index),
    • 异步IO”(Async IO),
    • 刷新邻接页”(Flush Neighbor Page)【“预读”的原理】



【关于“插入缓存”、“二次写”、“自适应哈希索引”三个部分,网上文章都和我从MySQL手册上理解的大相径庭,实在难以相信】

插入缓冲(Insert Buffer)

二次写(Double Write)

自适应哈希索引(Adaptive Hash Index)

异步IO(Async IO)

刷新邻接页(Flush Neighbor Page)