在Debian系統上配置和優化LNMP(Linux, Nginx, MySQL, PHP)環境以提升MySQL性能涉及多個步驟。以下是一些關鍵的優化策略:
/etc/mysql/my.cnf 或 /etc/my.cnf 文件。[mysqld]
innodb_buffer_pool_size = 1G # 增加InnoDB緩沖池大小以提高緩存命中率
query_cache_size = 64M # 控制查詢緩存的大小
max_connections = 500 # 根據應用需求設置最大連接數
sort_buffer_size = 256K # 調整排序和分組操作的內存限制
tmp_table_size = 64M # 臨時表大小
innodb_log_file_size = 256M # 日志文件大小
innodb_flush_log_at_trx_commit = 2 # 事務提交時刷新日志的策略
sudo systemctl restart mysql
CREATE INDEX idx_column_name ON table_name(column_name);
OPTIMIZE TABLE 命令整理表空間和碎片。OPTIMIZE TABLE table_name;
EXPLAIN 關鍵字查看查詢的執行計劃,找出性能瓶頸并進行優化。EXPLAIN SELECT * FROM table_name WHERE column_name = 'value';
SELECT column1, column2 FROM table_name;
LIMIT 子句限制返回的行數。SELECT * FROM table_name LIMIT 10;
OPTIMIZE TABLE 命令,整理表空間并減少碎片。MySQLTuner 或 Percona Toolkit 來分析和優化MySQL性能。通過上述方法,可以顯著提升MySQL在Debian系統上的性能表現。每個優化步驟都需要根據具體的服務器環境和業務需求進行調整,以達到最佳效果。