随笔分类 -  数据库 / MySQL / InnoDB 存储引擎

The InnoDB Storage Engine
摘要:[TOC] # InnoDB 磁盘架构 ## 表 ### 创建 InnoDB 表 建表语句: ```sql mysql> CREATE TABLE t1 (a INT, b CHAR (20), PRIMARY KEY (a)) ENGINE=InnoDB; ``` 默认情况下,InnoDB 表会被 阅读全文
posted @ 2023-08-25 17:20 LARRY1024 阅读(55) 评论(0) 推荐(0) 编辑
摘要:[TOC] # InnoDB 存储引擎 - MySQL Server 管理 - MySQL Server Logs - The Binary Log - 优化 - SQL 语句优化 - SELECT 语句优化 - 索引条件下推优化 - 避免全表扫描 - 索引优化 - 数据结构优化 - InnoDB 阅读全文
posted @ 2023-08-25 15:20 LARRY1024 阅读(60) 评论(0) 推荐(0) 编辑
摘要:[TOC] # InnoDB 磁盘 I/O InnoDB 尽可能使用异步磁盘 I/O,通过创建多个线程来处理 I/O 操作,同时允许在 I/O 仍在进行时继续进行其他数据库操作。 - 在 Linux 和 Windows 平台上,InnoDB使用可用的操作系统和库函数来执行“本机”异步 I/O。 - 阅读全文
posted @ 2023-08-25 11:13 LARRY1024 阅读(112) 评论(0) 推荐(0) 编辑
摘要:[TOC] # 死锁 死锁是指不同事务无法继续进行的情况,因为每个事务都持有另一个事务需要的锁。因为两个事务都在等待资源变得可用,所以都不会释放它所持有的锁。 当事务锁定多个表中的多个行(通过 UPDATE 或 SELECT ... FOR UPDATE 等语句)但顺序相反时,可能会发生死锁。当此类 阅读全文
posted @ 2023-08-24 19:39 LARRY1024 阅读(58) 评论(0) 推荐(0) 编辑
摘要:[TOC] # InnoDB 中不同 SQL 语句设置的锁 [加锁读(locking read)](https://dev.mysql.com/doc/refman/8.1/en/glossary.html#glos_locking_read)、UPDATE 语句或者 DELETE 语句通常会对在 阅读全文
posted @ 2023-08-24 17:18 LARRY1024 阅读(34) 评论(0) 推荐(0) 编辑
摘要:[TOC] # InnoDB 事务模型 InnoDB 事务模型旨在将[多版本(multi-versioning)](https://dev.mysql.com/doc/refman/8.1/en/glossary.html#glos_mvcc) 数据库的最佳属性与传统的两阶段锁定结合起来。 Inno 阅读全文
posted @ 2023-08-23 15:23 LARRY1024 阅读(49) 评论(0) 推荐(0) 编辑
摘要:目录InnoDB 的锁共享锁和排它锁意向锁总结记录锁间隙锁总结Next-Key 锁总结插入意向锁总结AUTO-INC 锁空间索引的断言锁加锁总结加锁规则 InnoDB 的锁 InnoDB 使用的锁类型包括: 共享锁(shared lock)和排它锁(exclusive lock) 意向锁(inten 阅读全文
posted @ 2023-08-18 18:09 LARRY1024 阅读(46) 评论(0) 推荐(0) 编辑
摘要:目录Doublewrite Buffer刷盘策略Linux 上的刷新策略Windows 上的刷新策略刷新策略总结双写缓冲区的配置innodb_doublewriteinnodb_doublewrite_dirinnodb_doublewrite_filesflush 链表双写文件LRU 链表双写文件 阅读全文
posted @ 2023-08-17 19:47 LARRY1024 阅读(361) 评论(0) 推荐(0) 编辑
摘要:目录TablespaceSystem TablespaceFile-Per-Table TablespacesFile-Per-Table Tablespace Data Files优缺点优点缺点General Tablespaces通用表空间的行格式 Tablespace System Table 阅读全文
posted @ 2023-08-17 14:51 LARRY1024 阅读(49) 评论(0) 推荐(0) 编辑
摘要:目录InnoDB 架构概念pagepage sizecheckpointInnoDB 内存架构Buffer Pool缓冲池 LRU 算法相关配置innodb_buffer_pool_sizeinnodb_buffer_pool_instances缓冲池优化Change Buffer配置变更缓冲inn 阅读全文
posted @ 2023-08-14 18:21 LARRY1024 阅读(117) 评论(0) 推荐(0) 编辑
摘要:目录InnoDB 的主要优势使用 InnoDB 表的好处InnoDB表的最佳实践验证 InnoDB 是否为默认存储引擎 InnoDB 的主要优势 InnoDB 的主要优势: 其 DML 操作遵循 ACID 模型,事务具有提交、回滚和崩溃恢复功能,以保护用户数据。 行级锁定和 Oracle 风格的一致 阅读全文
posted @ 2023-08-14 11:36 LARRY1024 阅读(99) 评论(0) 推荐(0) 编辑
摘要:目录MySQL一条SQL语句的执行过程开启事务两阶段提交MySQL的两阶段提交过程异常重启会出现什么现象?两阶段提交的缺点组提交组提交的过程MySQL 磁盘 I/O 很高的优化方法 MySQL MySQL分为 Server 层 与 存储引擎层。 Server 层:包括连接器、查询缓存、分析器、优化器 阅读全文
posted @ 2023-03-28 22:38 LARRY1024 阅读(1255) 评论(0) 推荐(0) 编辑
摘要:目录InnoDB 多版本并发控制多版本控制和二级索引共享锁和排它锁当前读和快照读当前读快照读Read ViewRead Veiw 的生成流程总结 InnoDB 多版本并发控制 InnoDB 是一个多版本(multi-version)存储引擎,它会保存被修改行的旧版本信息,以支持并发和回滚等事务功能, 阅读全文
posted @ 2023-03-24 23:03 LARRY1024 阅读(115) 评论(0) 推荐(0) 编辑
摘要:[TOC] # 事务 事务是一个不可分割的数据库操作序列,也是数据库并发控制的基本单位,其执行的结果必须使数据库从一种一致性状态变到另一种一致性状态。事务是逻辑上的一组操作,要么都执行,要么都不执行。 事务就是一组原子性的操作,这些操作要么全部发生,要么全部不发生。事务把数据库从一种一致性状态转换成 阅读全文
posted @ 2023-03-22 17:16 LARRY1024 阅读(61) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示
🚀
回顶
收起
  1. 1 404 not found REOL
404 not found - REOL
00:00 / 00:00
An audio error has occurred.