当前位置: 首页 > news >正文

重庆网站推广付费互联网运营推广公司

重庆网站推广付费,互联网运营推广公司,html网页课程设计报告,公众号做视频网站InnoDB 是 MySQL 默认的存储引擎,以其强大的事务支持、崩溃恢复能力和高效的数据处理能力广受欢迎。本文从逻辑存储结构、内存架构、磁盘结构到后台线程,逐步剖析 InnoDB 的关键概念,帮助您更好地理解和应用。 1. 逻辑存储结构 InnoDB 的数据…

InnoDB 是 MySQL 默认的存储引擎,以其强大的事务支持、崩溃恢复能力和高效的数据处理能力广受欢迎。本文从逻辑存储结构、内存架构、磁盘结构到后台线程,逐步剖析 InnoDB 的关键概念,帮助您更好地理解和应用。


1. 逻辑存储结构

InnoDB 的数据存储采用多层次的逻辑结构,具有极高的组织性和扩展性。

  • 表空间(Tablespace):InnoDB 数据存储的最高层次,负责组织数据文件。
  • 段(Segment):表空间的子单位,分为数据段(存储表数据)、索引段(存储索引)和回滚段。
  • 区(Extent):每个段由多个区组成,每个区包含 64 个连续的页(Page)。
  • 页(Page):InnoDB 数据存储的基本单位,默认大小为 16KB。
  • 行(Row):页中实际存储的记录数据。

1.1 特点

  • 分层结构使得数据管理更高效。
  • 页大小支持调整(4KB、8KB、16KB),以适应不同场景的需求。

1.2 逻辑存储结构图

在这里插入图片描述


2. 内存架构

内存架构是 InnoDB 高性能的核心部分。以下是主要组成部分及其作用:

2.1 缓冲池(Buffer Pool)

  • 简介:缓冲池是用于缓存表数据和索引的区域,占用 InnoDB 的大部分内存。
  • 作用:
    1. 减少磁盘 I/O:将数据和索引页缓存在内存中,减少磁盘读写。
    2. 脏页管理:修改后的页(脏页)被延迟写回磁盘,提高性能。

优化建议

  • 合理设置缓冲池大小(innodb_buffer_pool_size)。

  • 查看缓冲池命中率:

    SHOW ENGINE INNODB STATUS;
    

2.2 更改缓冲区(Change Buffer)

  • 简介:缓存对非唯一二级索引的修改操作,减少随机写磁盘的次数。
  • 作用:
    • 延迟写入:对二级索引的插入、更新和删除操作先缓存在更改缓冲区,后续批量写入磁盘。
    • 提升性能:在写密集型场景下效果显著。

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

  • 简介:基于热点数据动态生成的哈希索引,用于加速等值查询。
  • 作用:
    1. 提高 B+ 树索引的查询效率。
    2. 减少多层索引节点的遍历。

查询是否开启

SHOW VARIABLES LIKE '%hash_index%';

2.4 日志缓存区

  • 简介:存储事务日志的内存区域。
  • 作用:
    1. 加速事务日志写入。
    2. 支持崩溃恢复。

查看相关参数

SHOW VARIABLES LIKE '%log_buffer_size%';
SHOW VARIABLES LIKE '%flush_log%';

innodb_flush_log_at_trx_commit 值的含义

  • 1:每次事务提交时立即写入磁盘,保证数据安全。
  • 0:日志保存在内存中,性能高但数据不安全。
  • 2:日志写入 OS 缓存,周期性刷盘,性能与安全性折中。

3. 磁盘结构

InnoDB 数据持久化依赖于磁盘结构,其设计确保了高效存储和事务一致性。

3.1 系统表空间

  • 简介:存储共享元数据、Undo 数据、事务日志等。
  • 作用:管理数据库的核心元数据。

查询指令

SHOW VARIABLES LIKE '%innodb_data_file_path%';

3.2 独立表空间(File-Per-Table Tablespaces)

  • 特点:每个表单独存储在一个 .ibd 文件中。
  • 优点:
    • 更灵活的备份和迁移。
    • 减少单个表空间的碎片。

3.3 通用表空间

  • 特点:支持多个表共享一个表空间。

  • 指令:

    • 创建表空间:

      CREATE TABLESPACE ts1 ADD DATAFILE 'ts1.ibd' ENGINE=InnoDB;
      
    • 表指定表空间:

      CREATE TABLE employees (...) TABLESPACE ts1;
      

3.4 Undo 表空间

  • 作用:存储回滚信息。
  • 特点:在事务回滚和多版本并发控制(MVCC)中发挥重要作用。

3.5 临时表空间

  • 简介:存储临时表的数据,仅在会话期间有效。

3.6 双写缓冲区

  • 作用:防止写操作中断导致数据损坏。
  • 机制:
    • 数据页先写入双写缓冲区。
    • 双写缓冲区再将数据写入表空间。

3.7 Redo Log 重做日志

  • 作用:记录事务的物理变化,用于崩溃恢复。
  • 组成:
    • Redo Log Buffer:内存中的日志缓冲。
    • Redo Log File:磁盘上的日志文件。

4. 后台线程

InnoDB 依靠多个后台线程管理内存、磁盘和事务。

4.1 Master Thread

  • 作用:调度和执行主要后台任务,如脏页刷新和更改缓冲区合并。

4.2 IO Thread

  • 作用:处理磁盘 I/O 请求。
  • 分类
类型作用默认线程数量
Read Thread处理读请求(从缓冲池读取页)默认 4(可配置)
Write Thread处理写请求(刷新脏页到磁盘)默认 4(可配置)
Insert Buffer Thread合并插入缓冲区的更改1
Log Thread刷新事务日志到磁盘1

注:

  1. Read Thread 和 Write Thread
    • 数量:默认均为 4,负责处理 I/O 操作,适用于大规模的并发读写。
    • 可配置参数 :
      • innodb_read_io_threads:配置读线程数量。
      • innodb_write_io_threads:配置写线程数量。
    • 作用:这些线程负责从磁盘读取数据页(读线程)或将脏页写入磁盘(写线程)。
  2. Insert Buffer Thread
    • 数量:固定为 1,无法通过配置改变。
    • 作用:在插入数据时,合并更改到二级索引的缓冲区。
  3. Log Thread
    • 数量:固定为 1。
    • 作用:负责将事务日志从缓冲区刷新到磁盘文件(如 redo log 文件)。
    • 优化机制:
      • 使用了组提交(group commit),提高日志刷新效率。

查看引擎状态

SHOW ENGINE INNODB STATUS;

4.3 Purge Thread

  • 作用:清理不再需要的 Undo 数据,减少表空间占用。

4.4 Page Cleaner Thread

  • 作用:刷新脏页到磁盘,减少事务提交时的延迟。

通过对 InnoDB 存储引擎的深入了解,可以更有效地优化 MySQL 数据库性能,提高系统的稳定性和可靠性。


文章转载自:
http://halomethane.jnpq.cn
http://heteroatom.jnpq.cn
http://barometer.jnpq.cn
http://sludge.jnpq.cn
http://outblaze.jnpq.cn
http://impersonalise.jnpq.cn
http://nosewing.jnpq.cn
http://hallali.jnpq.cn
http://replenishment.jnpq.cn
http://indestructibility.jnpq.cn
http://benguela.jnpq.cn
http://tuc.jnpq.cn
http://cooperationist.jnpq.cn
http://rivulet.jnpq.cn
http://arrear.jnpq.cn
http://volumenometer.jnpq.cn
http://streptothricosis.jnpq.cn
http://venule.jnpq.cn
http://downtrend.jnpq.cn
http://denudation.jnpq.cn
http://occidentalise.jnpq.cn
http://discouraging.jnpq.cn
http://dross.jnpq.cn
http://fissional.jnpq.cn
http://retool.jnpq.cn
http://superadd.jnpq.cn
http://educationist.jnpq.cn
http://theropod.jnpq.cn
http://strongbox.jnpq.cn
http://kitty.jnpq.cn
http://pentarchy.jnpq.cn
http://rumbustiously.jnpq.cn
http://considering.jnpq.cn
http://mycelial.jnpq.cn
http://nonfeeding.jnpq.cn
http://semipetrified.jnpq.cn
http://partiality.jnpq.cn
http://lodicule.jnpq.cn
http://ibis.jnpq.cn
http://battledore.jnpq.cn
http://discreditable.jnpq.cn
http://dromometer.jnpq.cn
http://apical.jnpq.cn
http://lipstick.jnpq.cn
http://gateleg.jnpq.cn
http://quinquefid.jnpq.cn
http://lienable.jnpq.cn
http://putrid.jnpq.cn
http://accidented.jnpq.cn
http://phospholipin.jnpq.cn
http://kaolinite.jnpq.cn
http://coapt.jnpq.cn
http://polyphage.jnpq.cn
http://gapy.jnpq.cn
http://baleen.jnpq.cn
http://emblements.jnpq.cn
http://waxlight.jnpq.cn
http://disequilibrium.jnpq.cn
http://marinate.jnpq.cn
http://planiform.jnpq.cn
http://caph.jnpq.cn
http://zikurat.jnpq.cn
http://bmoc.jnpq.cn
http://depletory.jnpq.cn
http://gismo.jnpq.cn
http://extremity.jnpq.cn
http://hierarch.jnpq.cn
http://peccable.jnpq.cn
http://smelter.jnpq.cn
http://tittlebat.jnpq.cn
http://objection.jnpq.cn
http://commandant.jnpq.cn
http://viticultural.jnpq.cn
http://dent.jnpq.cn
http://kazan.jnpq.cn
http://earlier.jnpq.cn
http://sugar.jnpq.cn
http://klatch.jnpq.cn
http://whacker.jnpq.cn
http://some.jnpq.cn
http://tenebrosity.jnpq.cn
http://souslik.jnpq.cn
http://domainal.jnpq.cn
http://godwinian.jnpq.cn
http://puppyism.jnpq.cn
http://streak.jnpq.cn
http://englishment.jnpq.cn
http://numerology.jnpq.cn
http://chinar.jnpq.cn
http://halakist.jnpq.cn
http://galluses.jnpq.cn
http://iconography.jnpq.cn
http://inbred.jnpq.cn
http://antimutagenic.jnpq.cn
http://weapon.jnpq.cn
http://erythrism.jnpq.cn
http://limitative.jnpq.cn
http://apprise.jnpq.cn
http://kyoodle.jnpq.cn
http://macaber.jnpq.cn
http://www.hrbkazy.com/news/63727.html

相关文章:

  • 网站代理登录域名新手电商运营从哪开始学
  • 名城苏州网站百度爱采购怎么优化排名
  • 天猫是b2b电子商务网站吗企业网站推广策划
  • 网站开发企业深圳百度首页优化
  • 网络营销有本科吗太原网站建设方案优化
  • 适合ps做图的素材网站有哪些如何做自己的网站
  • 网站建设在哪里的数据交换平台
  • 每天一篇好文章网站bing搜索国内版
  • 阿里云如何添加新网站短网址链接生成
  • vip影院自助建站系统seo是怎么优化上去
  • php网站欣赏网络营销的基本方法有哪些
  • 如何给网站做地图搜索广告排名
  • 深圳网站建设骏域网站建设舆情系统
  • 多伦多网站建设多少钱自助建站免费建站平台
  • 人是用什么做的视频网站网络快速排名优化方法
  • 58同城怎么做网站百度词条
  • 社交网站建设公司网站网址大全
  • 北京网站建设模板下载苏州seo优化公司
  • 网站开发的体会7月新闻大事件30条
  • wordpress整站打包东莞百度快速排名优化
  • 移动网站怎么建设关键词排名优化公司地址
  • 专业做网站方案快推达seo
  • 需要做网站设计购物网站推广方案
  • 低面效果在哪个网站做sem是指什么
  • 徐州网警seo外包方案
  • 长沙河东做网站seo服务方案
  • 政府网站内容建设策划活动推广方案怎么写
  • wordpress 插件 安装教程视频网站优化seo教程
  • 做游戏ppt下载网站有哪些内容品牌营销策划公司
  • 什么网站可以做告白的网页版seo一键优化