InnoDB核心参数的介绍

#存储引擎默认设置
default_storage_engine=innodb

#表空间模式
innodb_file_per_table=1
# 共享表空间文件个数和大小
innodb_data_file_path=ibdata1:512M:ibdata2:512M:autoextend
# "双一" 标准的其中一个 ******
innodb_flush_log_at_trx_commit=1 
-------
1 每个事物提交的时候,写入OS buffer并且必须写入磁盘 1 默认模式
2 每秒写入 0 
3 每个事物提交的时候只写入OS buffer 2 并不实时写入磁盘
-------

每次事务提交都立即刷写binlog到磁盘  "双一" 标准的其中一个

sync_binlog=1    

 

Innodb_flush_method=(O_DIRECT, fsync) *****

作用: 控制的是 Redo buffer  和 buffer pool
fsync    :                       数据方向buffer pool 先写入OS buffer 在刷新到磁盘  redo日志方向 先写入OS buffer 在刷新到磁盘
O_DIRECT : 建议模式              数据方向直接写入磁盘  redo日志方向 先写入OS buffer 在刷新到磁盘
O_DSYNC  :                       数据方向 先写入OS buffer 在刷新到磁盘  日志方向直接写入磁盘:

最高安全模式
innodb_flush_log_at_trx_commit=1
Innodb_flush_method=O_DIRECT

最高性能:
innodb_flush_log_at_trx_commit=0
Innodb_flush_method=fsync


redo日志设置有关的
innodb_log_buffer_size=16777216
innodb_log_file_size=50331648
innodb_log_files_in_group = 3

脏页刷写策略
innodb_max_dirty_pages_pct=75
还有哪些机制会触发写磁盘?
CSR 
redo满了

你可能感兴趣的:(MySQL)