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

MySQL 環境變數配置詳解:my.cnf 關鍵參數與調優指南

     編輯:MySQL 綜合教學

配置檔與生效方式

  • 修改 /etc/my.cnf(或 my.ini),重啟 MySQL 生效。
  • MySQL 4.0+ 部分參數可運行時動態調整(SET GLOBAL),但重啟後失效,持久化仍需改配置檔。

核心目錄與檔案參數

參數說明
basedir安裝根目錄
datadir資料檔案目錄
pid-file進程 ID 檔案路徑(僅 Unix/Linux)

[mysqld] 關鍵效能參數

參數建議/說明
socket本地通訊 socket 路徑,預設 /var/lib/mysql/mysql.sock
port監聽埠,預設 3306
key_buffer_size索引塊緩衝區(MyISAM 關鍵),視記憶體大小設定,如 384M
table_open_cache所有執行緒開啟表快取數,避免頻繁開關表開銷,如 512
sort_buffer_size每連接排序緩衝區(ORDER BY/GROUP BY),每連接獨佔,100 連接 × 2M = 200M
read_buffer_size每連接讀查詢緩衝區,同樣獨佔
query_cache_size查詢結果快取大小,如 32M(MySQL 8.0 已移除)
read_rnd_buffer_size排序後隨機讀緩衝,如 8M
myisam_sort_buffer_sizeMyISAM 變更重排序緩衝,如 64M
thread_concurrency最大並發執行緒,建議邏輯 CPU 數 × 2(超執緒再 ×2),如 8
thread_cache_size可重用執行緒快取數,如 8
skip-locking關閉外部鎖定,提升穩定性

[mysqldump] 區段

[mysqldump]
max_allowed_packet = 16M  # 客戶端/伺服器最大封包

[myisamchk] 區段

[myisamchk]
key_buffer = 256M
sort_buffer = 256M
read_buffer = 2M
write_buffer = 2M

調優提醒

  • 每連接獨佔記憶體參數(sort_buffer、read_buffer、join_buffer 等)乘以 max_connections 估算總佔用,避免 OOM。
  • MySQL 8.0 移除 Query Cache,改用其他機制。
  • 生產環境建議以 mysqltuner、mysqlsla 等工具輔助分析再調整。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved