#存储引擎默认设置
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满了