/etc/sysctl.conf,調整net.core.somaxconn(連接隊列)、vm.swappiness(減少內存交換)、tcp_max_syn_backlog(TCP連接回收)等參數。/etc/security/limits.conf中增加nofile(文件描述符)限制,避免連接數受限。innodb_buffer_pool_size為物理內存的50%-80%,優化innodb_log_file_size(建議256-512MB)和innodb_flush_log_at_trx_commit(設為2提升寫入性能,犧牲部分持久性)。max_connections(根據并發量)、innodb_io_capacity(匹配磁盤性能,如SSD設為2000)。SELECT *,使用EXPLAIN分析慢查詢,減少JOIN操作,添加LIMIT分頁。OPTIMIZE TABLE釋放碎片,ANALYZE TABLE更新統計信息。MySQLTuner、Percona Toolkit或Prometheus+Grafana監控數據庫負載、慢查詢等指標。注意:所有優化前需備份數據,測試環境驗證后再應用到生產環境。
參考來源: