linux mysql 启动流程_MySQL的innodb启动过程

fil_init 主要是初始化文件打开指针哈希表,所有打开的文件全记录在 fil_system 之中,构造按名字查找的哈希表

buf_pool_init 内存缓冲池的初始化,对应 buf_pool_ptr 数组之中,还初始化了 adaptive hash index 的内存

log_init 初始化log缓冲区,默认大小为 512*16k, 每个log页面大小为 #define OS_FILE_LOG_BLOCK_SIZE  512  日志文件在创建过程中也是指定不用系统缓存

lock_sys_create 初始化系统锁,就是建了一个HASH表,lock_sys

recv_recovery_from_checkpoint_start 开始执行恢复

dict_boot 初始化表结构的缓存,dict_sys,建两个hash表,可以根据表名和表ID查找;初始化系统表,就四个 SYS_TABLES SYS_COLUMNS SYS_INDEXES SYS_FIELDS ;初始化 insert buffer,每一个表空间对应一个;读入上面四个系统表中的内容

trx_sys_init_at_db_start 初初化事务结构体 trx_sys ; Creates the global purge system control structure and inits the history

dict_create_or_check_foreign_constraint_tables 创建另外两张系统表 SYS_FOREIGN SYS_FOREIGN_COLS

启动的线程,

IO部分共10个,可通过参数配置

1个 insert buffer thread

1个 log thread

4个 aio read thread

4个 aio write thread

1个 lock timeout thread      A thread which wakes up threads whose lock wait may have lasted too long

1个 error monitor thread    A thread which prints warnings about semaphore waits which have lasted too long

1个 monitor thread           A thread which prints the info output by various InnoDB monitors

1个 master thread           The master thread controlling the server

1个 thread handle shutdown

1个 handle connections socket 专门用来处理连理的

1个 trx_rollback_or_clean_all_recovered Rollback the uncommitted transactions which have no user   session

struct st_MySQL_plugin *mysql_optional_plugins[]=

{

builtin_innobase_plugin, builtin_perfschema_plugin, builtin_partition_plugin, 0

};

struct st_mysql_plugin *mysql_mandatory_plugins[]=

{

builtin_binlog_plugin, builtin_mysql_password_plugin,  builtin_csv_plugin, builtin_heap_plugin, builtin_myisam_plugin, builtin_myisammrg_plugin, 0

};

初始化的 binlog memory myisam innodb pefformance_schema partition0b1331709591d260c1c78e86d0c51c18.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值