在系統級別,您將調整硬件和軟件選項以提高 MySQL 性能。
一、平衡四大硬件資源
1、磁盤存儲
花點時間評估您的存儲空間。如果您使用的是傳統硬盤驅動器 (HDD),則可以升級到固態驅動器 (SSD) 以提高性能。
使用sysstat包中的iotop或sar之類的工具來監控磁盤輸入/輸出速率。如果磁盤使用率遠高于其他資源的使用率,請考慮添加更多存儲或升級到更快的存儲。
2、處理器
處理器通常被認為是衡量系統速度的指標。使用Linux top命令了解資源的使用情況。注意 MySQL 進程及其所需的處理器使用百分比。
處理器的升級成本更高,但如果您的 CPU 是瓶頸,則可能需要升級。
3、內存
內存表示您的 MySQL數據庫存儲服務器中的 RAM 總量。您可以調整內存緩存(稍后會詳細介紹)以提高性能。如果您沒有足夠的內存,或者現有內存沒有優化,您最終可能會損害您的性能而不是提高它。
像其他瓶頸一樣,如果您的服務器經常耗盡內存,您可以通過添加更多來升級。如果您的內存不足,您的服務器將緩存數據存儲(如硬盤)以充當內存。數據庫緩存會降低您的性能。
4、網絡
監控網絡流量以確保您有足夠的基礎設施來管理負載非常重要。
網絡過載會導致延遲、丟包甚至服務器中斷。確保您有足夠的網絡帶寬來容納正常水平的數據庫流量。
二.、使用 InnoDB,而不是 MyISAM
MyISAM是一種較舊的數據庫樣式,用于某些 MySQL 數據庫。這是一種效率較低的數據庫設計。較新的InnoDB支持更高級的功能并具有內置的優化機制。
InnoDB 使用聚集索引并將數據保存在頁面中,這些頁面存儲在連續的物理塊中。如果某個頁面的值太大,InnoDB 會將其移動到另一個位置,然后索引該值。此功能有助于將相關數據保存在存儲設備上的同一位置,這意味著物理硬盤驅動器訪問數據所需的時間更少。
三、使用最新版本的MySQL
對于舊的和遺留的數據庫,使用最新版本并不總是可行的。但只要有可能,您應該檢查正在使用的 MySQL 版本并升級到最新版本。
正在進行的開發的一部分包括性能增強。一些常見的性能調整可能會被較新版本的 MySQL 淘汰。一般來說,使用原生 MySQL 性能增強總是比腳本和配置文件更好。