mysql innodb常用引數介紹

2021-08-31 09:17:57 字數 1061 閱讀 8295

show variables like 'default_storage_engine';

在 my.cnf加入,重啟生效

default_storage_engine=innodb設定預設儲存引擎

show variables like 'innodb_buffer_pool_size';
**建議值,不超過物理記憶體的80%**
innodb_buffer_pool_size=512m(20g)

`show variables like 'innodb_log_buffer_size'`
`show variables like 'innodb_flush_log_at_trx_commit';`

有3個值 0,1,2 預設是1

0 每秒1次寫入到log file 中 同時會進行檔案系統到磁碟的同步操作,但每個事務的提交不會從log buffer

到log file中 速度快,但是不安全,減少磁碟io,出現故障丟失事務

1 每個事務的提交commit 會從log buffer 到log file ,同時出發檔案系統到磁碟的同不操作

2 每個事務的提交commit 會從logbuffer 到log file 不會出發檔案系統到磁碟的同步,但是美妙會有一次

檔案系統到磁碟的同步(並不會100%命中)

`show variables like 'innodb_log_file_size';`

小業務256m,中小型業務2g左右

`show variables like 'innodb_flush_method';`

控制innodb資料檔案及redo log的開啟/刷寫的模式

fsync

o_dsync

` show variables like 'innodb%data%file';`

MySQL InnoDB 常用優化引數

記憶體相關 io相關 5.6 開始支援index condition pushdown icp 取出索引的同時,判斷是否可以進行條件過濾,過濾後再去獲取記錄,可以大大減少上層sql對記錄的索取,支援range,ref,eq ref,ref or null型別的查詢。innodb flush log ...

mysql innodb引擎 引數配置優化

innodb flush log at trx commit預設是1 修改為2 效能提公升四倍左右 show global variables like innodb flush log at trx commit set global innodb flush log at trx commit ...

MySQL innoDB效能優化

起因 有乙個innodb引擎的表table,在乙個大概3000次的foreach迴圈中執行 insert into table columna,columnb values valuea,valueb 結果居然超出了60s的php執行限制 當然這個限制可以在php.ini中修改 讓我很不解為何插入效...