Mysql
MySQL 複製:從伺服器性能最重要的配置參數?
我正在設置一個
mysql
主從配置,slave
它位於一個更弱的伺服器上。因為,如果我理解正確,slave 僅適用於更新/插入,我可以調整哪些最關鍵的配置參數
slave
以my.cnf
確保最佳性能和最小可能的延遲?
- 主:32Gb RAM,從:4Gb RAM
- 主要是 innodb 表
- 主從伺服器上的 Percona-server 5.5
如果您關心的是性能並且您不關心在伺服器崩潰的情況下失去一小塊數據(通常是 1 秒),我會更改以下變數:
innodb_buffer_pool_size
- 嘗試使用總記憶體的 80%(在本例中為 3.2Gb)innodb_log_file_size
- 在這裡選擇一個好的值來優化你的從站中的 i/oinnodb_flush_log_at_trx_commit
- 將其設置為 2 或 0innodb_doublewrite
-禁用innodb雙寫innodb_flush_method
- 將刷新方法更改為 O_DIRECTsync_binlog
- 如果你在slave上啟用了二進制日誌,禁用sync_binlog- 確保您已禁用同步從屬變數,並且
sync_master_info
sync_relay_log
sync_relay_log_info
閱讀這篇文章是一個不錯的選擇,它是對如何優化 innodb 的一般概述,它適用於您的主伺服器和您的從伺服器。
如果您計劃升級到實現 MySQL 5.6 功能的 percona 伺服器,我建議您增加從屬 sql 執行緒的數量
slave-parallel-workers