首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> MySQL 資料庫 >> MySQL 綜合教學

MySQL 系統參數調優實戰:九大關鍵變數與配置範本 (精簡版)

     編輯:MySQL 綜合教學

九大核心參數速查

參數預設建議調整觀測指標
back_log50500Processlist 大量 unauthenticated user
interactive_timeout288007200睡眠連線佔用槽位
key_buffer_size8M400M (2GB RAM 範例,MyISAM 為主)Key_reads / Key_read_requests < 0.01
max_connections1001024Max_used_connections / max_connections > 0.85
read_buffer_size128K16M全表掃描/範圍查詢多
sort_buffer_size2M16MSort_merge_passes 遞增
table_open_cache64512Opened_tables 持續增長
thread_cache_size080Threads_created / Connections > 0.1
wait_timeout288007200殭屍連線數

配置修改流程

  1. 編輯 /etc/my.cnf (或 my.ini) [mysqld] 區段
  2. 重啟 MySQL:systemctl restart mysqld / net stop mysql && net start mysql
  3. 驗證生效:SHOW GLOBAL VARIABLES LIKE '參數名';
  4. 壓測 / 觀察生產指標 30 分鐘以上

硬體相關性提醒

  • 以上數值基於 2GB RAM、雙核、機械硬碟 範例
  • 實際調整必須依據實體記憶體、CPU 核心、儲存介質 (SSD/NVMe/HDD)、負載型態 (OLTP/OLAP/混合) 計算
  • 會話級緩衝 (read_buffer_size, sort_buffer_size) 總量 = 設定值 × 最大連線數,切勿超過實體記憶體 50%

InnoDB 關鍵補充 (現代版本核心)

innodb_buffer_pool_size = 70% 實體記憶體
innodb_log_file_size = 1-4 GB
innodb_flush_log_at_trx_commit = 1
innodb_file_per_table = ON
innodb_io_capacity = SSD 2000 / NVMe 5000+

常見誤區

  • 只調這 9 參數而忽略 InnoDB 核心參數 → 效能瓶頸未解
  • 會話級參數設太大 → 連線暴增瞬間 OOM
  • 未監控 Opened_tables、Threads_created、Slow_queries 就宣稱調優完成
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved