1. 程式人生 > >mysql innodb常用引數介紹

mysql innodb常用引數介紹

檢視預設的儲存引擎是那種

show variables like 'default_storage_engine';

在 my.cnf加入,重啟生效
default_storage_engine=innodb 設定預設儲存引擎

innodb初期重要引數設定

show variables like 'innodb_buffer_pool_size';

1) innodb_buffer_pool_size 使用者innodb資料和索引的快取,預設128M,innodb重要的效能引數

**建議值,不超過實體記憶體的80%**

innodb_buffer_pool_size=512M(20G)

2) innodb_log_buffer_size (日誌緩衝區) 預設16M

`show variables like 'innodb_log_buffer_size'`

3) innodb_flush_log_at_trx_commit(控制事務的提交方式,控制日食重新整理等到硬碟的方式)

 `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%命中)

4)innodb_log_file_size(制定重做日誌檔案大小,日誌檔案功能資料庫掛了以後的恢復操作)

 `show variables like 'innodb_log_file_size';`

    小業務256M,中小型業務2G左右

5)innodb_flush_method

   `show variables like 'innodb_flush_method';`

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

6)系統表空間與臨時表空間路徑

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