码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • MySQL 主要线程


    文章目录

      • MySQL 主要线程
        • 1. Master thread
        • 2. io thread
        • 3. purge thread
        • 4. page Cleaner Thread

    MySQL 主要线程

    在这里插入图片描述

    1. Master thread

    Master thread有四大循环,分别是loop,background loop,suspend loop,flush loop。且四大循环的作用如下:

    • loop: 是master thread的主循环, 用于将buffer pool的脏页刷新到磁盘,合并change buffer的脏页到辅助索引页面,清理undo log页。
    • background loop: 这是master thread的后台循环。当数据库还在运行,且没有用户运行事件,此时会进入background 循环。
    • flush loop: 刷新循环。一般是进入background loop后当服务器没有空闲状态了会进入flush loop.
    • suspend loop: 暂停循环,数据库处于恢复的状态,状态恢复后进入loop循环.

    在这里插入图片描述
    如上图所示
    innodb 1.0.x之前的master thread和此版本有些不同。不同之处在于脏页刷新的页面数,在1.0.x之前的版本中,每秒刷写固定的100个脏页,合并20个undo页。

    2. io thread

    在innodb 存储引擎中大量使用了AIO(Async IO)来处理io请求.在innodb 1.0.x版本之前,共有4个IO thread,分别是 wirte io ,read io,insert buffer ,log io thread,但是在windows平台可以通过innodb_file_io_threads来增加IO thread。从InnoDB 1.0.X版本开始,read thread,write thread分别增加到了4个,并不再使用innodb_file_io_threads参数,而是使用innodb_read_io_threads,innodb_write_io_threads参数。

    3. purge thread

    purge thread主要用于回收undo 页。在InnoDB 1.1版本之前主要由master thread回收undo 页,从innodb 1.1版本开始,将purge独立,从而提高cpu利用率。用户可以通过innodb_purge_threads参数设置purge 的线程,不过这一特性是从innodb 1.2开始支持的,一般就设置4吧,表示有4个purge thread并行清理undo页面。

    4. page Cleaner Thread

    page Cleaner Thread 用于脏页刷新,这一功能是从innodb 1.2.x版本开始引入的。

  • 相关阅读:
    2023系统分析师---论需求分析方法及应用(内部消息)
    找不到vcruntime140.dll,无法继续执行代码的详细解决方案
    笔记软件 Keep It mac v2.3.3中文版新增功能
    寄售抢画字画拍卖-数字藏品竞拍-拍溢价系统古玩文物寄售源码系统
    算法竞赛备赛进阶之背包问题训练
    Linux-命令行命令
    hologres基础知识一文全
    新手也能上手的天气预报demo(高德API+echarts)
    OpenHarmony、HarmonyOS打开编辑 PDF 等操作的三方组件使用教程
    5道面试中的常见的统计学问题
  • 原文地址:https://blog.csdn.net/jiaona_chen123/article/details/127547736
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号