InnoDB部分常用参数解析


InnoDB部分常用参数解析

一、文件(数据文件、日志文件)

1、相关参数:

innodb_data_home_dir

innodb_data_file_path=file_name:file_size[:autoextend[:max:max_file_size]]

注:

a、innodb_data_file_path的值应该为一个或多个 数据文件规格的列表。如果命名一个以上的数据文件,用 分号(‘;’)分隔它们

b、autoextend属性和后面跟着的属性只可被用来对innodb_data_file_path行里最后一个数据文件。

c、InnoDB不创建目录,所以在启动服务器之前请确认/ibdata目录的确存在

d、如果没有指定innodb_data_home_dir,则默认为mysql数据目录

e、如果你指定innodb_data_home_dir为一个空字符串,你可以为列在innodb_data_file_path值里的数据文件指定绝对路径。

[mysqld]

innodb_data_home_dir =

innodb_data_file_path=/ibdata/ibdata1:50M;/ibdata/ibdata2:50M:autoextend

二、参数

1、innodb_autoextend_increment(动态,默认为8M)

当自动扩展表空间被填满之时,为扩展而增加的尺寸(MB为单位)。

2、innodb_fast_shutdown(动态,默认为1)

0:在关闭之前做一个完全净化、插入缓冲合并和刷脏页,最慢,但重启最快

1:InnoDB在关闭之时跳过purge和insert buffer merge,只刷脏页

2:刷新日志并强制关闭,类似crash,数据不会丢,但在启动时会做一次崩溃恢复

mysql在关闭的时候进行的操作:

1、purge all:删除无用的undo页

2、merge insert buffer

3、flush dirty page

3、innodb_lock_wait_timeout

InnoDB事务在回滚之前可以等待一个锁定的秒数

4、innodb_max_dirty_pages_pct

InnoDB中的主线程试着从缓冲池写页面,使得脏页的百分比不超过这个值。

在show innodb status的log段中,可以查看Last checkpoint at与Log flushed up to的距离判断当前脏页的情况

在BUFFER POOL AND MEMORY中,查看Modified db pages与Buffer pool size的比例关系,该值约等于innodb_max_dirty_pages_pct

5、innodb_mirrored_log_groups(默认为1,没有镜像)

为数据库保持的日志组内同样拷贝的数量。

6、innodb_open_files

在InnoDB中,这个选项仅与你使用多表空间时有关。它指定InnoDB一次可以保持打开的.ibd文件的最大数目。最小值是10。 默认值300。对.ibd文件的文件描述符是仅对InnoDB的。它们独立于那些由--open-files-limit服务器选项指定的描述符,且不影响表缓存的操作。

MySQL InnoDB存储引擎锁机制实验

InnoDB存储引擎的启动、关闭与恢复

MySQL InnoDB独立表空间的配置

MySQL Server 层和 InnoDB 引擎层 体系结构图

InnoDB 死锁案例解析

MySQL Innodb独立表空间的配置

本文永久更新链接地址:

相关内容