MySQL中幾個重要的引數
阿新 • • 發佈:2020-07-15
sync_binlog
引數含義:控制binlog刷盤的頻率。
當值為 0 時,不強制刷盤,binlog依賴作業系統刷入磁碟。
當值為 1 時,確保binlog在一組事務提交前刷入磁碟。
當值為 N 時(非 0 或 1),表明每N個binlog組提交刷一次盤。
取值範圍:interger(0 ~ 4294967295)
推薦值: 1
備註:為了提高效能 binlog 使用組提交的方式,sync_binlog=1 表明binlog 每組事務提交時寫入並刷一次盤。
innodb_flush_log_at_trx_commit
引數含義:控制提交操作的ACID遵從性和更高的效能之間的平衡。要完全符合ACID,需使用預設設定 1,日誌在每次事務提交時寫入並重新整理到磁碟。設定為 0 時,每秒寫入一次日誌並將其重新整理到磁碟,尚未刷盤的日誌可能會在系統崩潰時丟失。設定為 2 時,每次事務提交後寫入日誌,並每秒重新整理到磁碟,尚未刷盤的日誌可能會在系統崩潰時丟失 取值範圍:0,1,2 推薦值:1 備註:binlog使用組提交方式時,innodb_flush_log_at_trx_commit 設定為1表明redo log每組事務提交時寫入並刷一次盤。 如果sync_binlog 和 innodb_flush_log_at_trx_commit 不同時設定為1,則資料庫崩潰恢復後,資料庫的內部狀態可能不一致。
innodb_buffer_pool_size
引數含義:用於innodb表和索引的快取資料的記憶體大小。
取值範圍:
| 最低值 | 5242880 |
| 最大值(64bit) |2^64-1 |
| 最大值(32bit) |2^32-1 |
推薦值:規格相關
foreign_key_checks
引數含義:如果設定為ON,則會檢查外來鍵約束,如果設定為OFF,將忽略外來鍵約束。
取值範圍:ON,OFF
推薦值:ON
備註:切記不要更改這個引數的預設設定,否則會導致一些問題。
unique_checks
引數含義:如果設定為ON,innodb中進行二級索引的唯一性檢查,如果設定為OFF,則跳過檢查,此時需要業務保證資料不包含重複索引。 取值範圍:ON,OFF 推薦值:ON 備註:切記不要更改這個引數的預設設定,否則會導致一些問題。
lower_case_table_names
引數含義:控制MySQL中的庫名、表名、表別名是否區分大小寫。0代表區分,1代表不區分。
取值範圍:0|1
推薦值:1
備註:切記不要更改這個引數的預設設定,否則會導致一些問題