如何完成 MySQL 性能調優(4 個關鍵提示)
已發表: 2021-11-02MySQL 是最流行的 Web 服務器數據庫管理系統之一。 如果您正在運行一個 WordPress 網站,那麼它很有可能使用 MySQL 作為其數據庫。 這使得您必須了解如何完成 MySQL 性能調整。
通過“調整” MySQL,我們的意思是優化您的數據庫,以便軟件能夠更快地響應查詢。 最終,這可能會導致加載時間更短,網站整體更快捷。 此外,如果您正確地維護您的數據庫,即使它的大小增加,它也應該繼續提供高性能。
在本文中,我們將簡要概述 MySQL 是什麼以及它是如何工作的。 然後我們將探討如何使用四個基本技巧來執行 MySQL 性能調整。
讓我們開始吧!
MySQL 是什麼以及它是如何工作的
動態網站將信息存儲在數據庫中,這是一個包含大量信息的複雜表結構的花哨術語。 數據庫使您能夠存儲變量並“查詢”它們以獲取所需的信息。 例如,當您加載 WordPress 網站時,內容管理系統 (CMS) 將連接到其數據庫以獲取所需的信息。
如果由於某種原因 WordPress 無法連接到數據庫,您可能會遇到諸如“MySQL Server Has Gone Away”或“MySQL 1064”之類的錯誤。 MySQL 是一種開源軟件,可讓您創建和管理數據庫。 它遠非唯一在線可用的數據庫管理系統。 然而,它在市場份額方面確實佔據主導地位,大約 15% 的網站使用它。
數據庫管理有不同的方法,MySQL 使用“關係”和“客戶端-服務器”模型。 這是什麼意思:
- 關係數據庫——這種類型的數據庫將信息分解成表格。 由於關係模型,您可以使用“鍵”或唯一標識符連接來自多個表的數據。
- 客戶端-服務器模型——使用此模型,您的數據庫駐留在服務器中,您的網站是客戶端。 瀏覽器向您的網站發出請求,然後再查詢數據庫。
由於 MySQL 是開源軟件,因此有許多可用的分支。 例如,在 Kinsta,我們使用 MariaDB,它是 MySQL 的一個分支。 我們選擇使用 MariaDB 是因為它提供了比其父軟件更高的性能。
如果您是 Kinsta 用戶,您不必擔心執行 MySQL 性能調整,因為我們會為您處理它。
然而,學習如何讓 MySQL 自己運行得更快仍然是一項有價值的技能,主要是在您的虛擬主機沒有為您進行優化的情況下。 讓我們談談優化需要什麼。
完成 MySQL 性能調優的 4 個技巧
如果您使用 WordPress 並想學習如何讓 MySQL 運行得更快,那麼最好不要專注於特定的配置。 相反,您需要微調您的數據庫以匹配您使用 WordPress 的方式。 讓我們談談這意味著什麼。
1. 保持你的 MySQL 版本是最新的
大多數網絡主機會自動為您更新 MySQL 到最新版本。 但是,如果您可以完全控制服務器,則需要手動更新數據庫管理系統。 由於您使用的是 WordPress,因此您可能了解使軟件保持最新的好處。 MySQL性能調優有很多優點,比如:
- 較新版本修補軟件中的安全漏洞。
- 最新版本的 MySQL 得到了更好的優化,因此速度更快。
更快的數據庫管理軟件直接轉化為更低的加載時間。 但是,您可能不知道您使用的是什麼版本的 MySQL。 如果您對服務器具有完全訪問權限,則可以啟動命令行並運行以下命令:
mysql -v
-v
參數將返回有關您的服務器使用的 MySQL 版本的信息。 您可以將該信息與 MySQL 官方網站上的最新版本進行比較,以查看可用的更新版本。 如果您不習慣使用命令行,您可以通過 WordPress 儀表板找出您正在使用的 MySQL 版本。
首先,訪問儀表板並轉到Tools > Site Health 。 接下來,打開Info選項卡並單擊Database :
根據您的 MySQL 版本,軟件可能會自動更新。 如果沒有,您可以使用命令行將 MySQL 更新到最新版本。 如果您使用的是 Kinsta,則不必擔心更新數據庫管理軟件。 相反,我們會自動將客戶端更新到 MariaDB 的最新穩定版本。
2. 檢查你的數據庫中的孤立表
通常,您從網站上卸載的插件和網站主題會留下數據。 這可能是由於編碼標準差,或者因為插件/主題決定存儲該數據以防您想重新安裝它們。 這種方法背後的想法是,將設置和配置存儲在數據庫中將節省您的時間和工作。
但是,所有這些未使用的表都可能導致數據庫膨脹,這反過來可能會根據服務器的功能減慢查詢速度。 理想情況下,您將在卸載插件後進行清理,以防止孤立表和數據累積。 您可以通過兩種方式完成該任務:手動或使用插件。

備份後,您可以通過 phpMyAdmin 訪問您的數據庫。 如果您是 Kinsta 用戶,請登錄您的 MyKinsta 儀表板並轉到站點。 選擇您要處理的站點並跳轉到其信息選項卡。 在那裡你會找到一個鏈接,它可以讓你通過 phpMyAdmin 直接訪問你的數據庫:
進入 phpMyAdmin 後,您可以使用該軟件的搜索功能來查找與特定插件相關的孤立表。 這種方法的問題在於,除非您嘗試清理的插件具有全面的文檔,否則很難知道要使用哪些查詢。
例如,Yoast SEO 建議在卸載插件後使用wpseo
查詢來查找與插件相關的表。 使用 phpMyAdmin 運行快速搜索將返回包含不同表中該術語的條目列表:
儘管手動方法有效,但我們鼓勵您使用數據庫清理插件解決方案。 使用其中一些插件,您甚至可以從儀表板中找到孤立的表並刪除它們,而無需通過 phpMyAdmin 進行挖掘。
需要為您的 WordPress 網站提供快速、可靠且完全安全的託管服務? Kinsta 提供所有這些以及來自 WordPress 專家的 24/7 世界級支持。 查看我們的計劃
3. 確定 MySQL 正在自動加載哪些數據
每個 WordPress 數據庫都包含大量表。 這些表之一稱為wp_options
,它包含以下信息:
- 插件和主題設置
- 您的網站 URL、博客名稱、描述等
如果您使用 phpMyAdmin 檢查wp_options
表,您會注意到名為autoload
的列。 WordPress 在autoload
下檢查帶有yes
條目的行,然後在每次有人訪問您的網站並訪問其任何頁面時加載該數據:
開箱即用,WordPress 應該只自動加載關鍵數據。 但是,一些插件和主題將數據添加到wp_options
並將其配置為自動加載。 隨著時間的推移,自動加載數據會減慢響應時間,就像您設置了太多程序以在您打開計算機時自動啟動一樣。
如果您的 WordPress 網站感覺緩慢,並且您可以在wp_options
中看到許多與插件相關的條目,我們建議您檢查 WordPress 中自動加載的數據量,並確定您可以禁用哪些插件。
4. 清理修訂、草稿、已刪除的評論和帖子
當您使用 WordPress 時,您的網站會積累大量未使用的數據。 例如,WordPress 會自動為您的帖子保存多個修訂和草稿,具體取決於您對它們進行了多少更改。 隨著時間的推移,所有這些數據都會使您的數據庫膨脹,因此最好定期清理這些條目。 最好的方法是使用插件,例如 Advanced Database Cleaner:
您不需要為此任務使用插件的高級版本(與處理孤立表時不同)。 啟用插件後,您可以轉到WP DB Cleaner選項卡並查看常規清理部分。 在那裡,您會找到插件可以幫助您從數據庫中刪除的所有瞬態數據的完整列表:
您可以選擇要“清理”或清空哪些表,然後手動運行該過程。 或者,該插件使您能夠為您選擇的表安排清理,並將它們配置為定期運行。 最後一個選項是您最好的選擇——這意味著您可以少操心一項任務。 但是,我們建議您不要將數據庫清理重新配置為過於頻繁地運行。 這樣,您仍然可以訪問以前的草稿,以備不時之需。
概括
MySQL 性能調優的好處有很多。 但是,您想要優化數據庫的主要原因是提高其性能,因此您的網站總是盡可能快地加載。 由於您使用的是 WordPress,因此有很多方法可以在不更改軟件配置的情況下執行 MySQL 性能調整。 如果您有興趣學習如何使 MySQL 運行得更快,這裡有四個提示可以幫助您入門:
- 使您的 MySQL 版本保持最新。
- 檢查您的數據庫中的孤立表。
- 確定 MySQL 正在自動加載哪些數據。
- 清理修訂、草稿、已刪除的帖子和評論。
您還有其他微調 MySQL 數據庫的技巧嗎? 請在下面的評論中與我們的社區分享!