按此:您的網站準備好迎接 MySQL 5.7 的 EoL 了嗎?

已發表: 2023-09-29

歡迎來到 Press This,WMR 的 WordPress 社群播客。 每集都有來自社區各地的嘉賓,並討論 WordPress 開發人員面臨的最大問題。 以下是原始錄音的轉錄。

由紅圈提供支持

Doc Pop :您正在收聽 Press This,這是 WMR 上的 WordPress 社群播客。 每週我們都會專注於 WordPress 社群的成員。 我是你們的主持人,波普博士。 我透過在 WP Engine 中的角色以及在 Torquemag.io 中的貢獻來支持 WordPress 社群。 您可以在 RedCircle、iTunes、Spotify 或您最喜歡的播客應用程式上訂閱 Press This。 您也可以直接從 WMR.fm 下載劇集。

現在,10 月 31 日,MySQL 將終止對 MySQL 5.7 版本的支持,儘管這個日期恰好是萬聖節,但 WordPress 用戶沒有理由……害怕這次升級。 這是一次重大升級,據我了解,75% 的 WordPress 網站仍在使用 MySQL 5.7 版本。

今天我們將與 WP Engine 的平台產品經理 Carmen Johnson 討論升級 MySQL 資料庫所需了解的所有信息,Carmen,您今天過得怎麼樣?

卡門·約翰遜:我做得很好,醫生,謝謝你的詢問。

DP :太棒了,讓我們開始吧。 在我們討論 MySQL 之前,我想聽聽您的 WordPress 起源故事。

CJ :當然,很高興分享。 我必須說這並不是非常有趣或令人著迷,但是,我的 WordPress 起源故事實際上是從 WP Engine 開始的。 所以,我有科技背景。 我在德州的幾家不同的科技公司工作過,WP Engine 是透過我的網路中那些我信任的人以及我之前共事過的人而進入我的視野的,他們對WP Engine 和我們在業界的領導地位只有最好的評價。 WordPress 社群。 所以我只是想過來嚐嚐酷愛飲料,正如你所說的。 我這樣做已經快五年了。

DP :太棒了,恭喜。 我們很高興您能來到這個空間並在節目中向我們介紹 WordPress 即將推出的資料庫切換。 有類似的名字嗎? 是嗎,我不想太過戲劇化,但它不像MySQL 5.7-geddon之類的,對吧?

CJ :不,不,不,沒什麼,沒什麼,很激烈。 不,你知道,這只是許多不同 WordPress 技術所具有的標準生命週期終止升級過程的一部分,而 MySQL 5.7 版本恰好有自己的生命週期終止過程。

DP :我不確定我的所有統計數據是否正確。 因此,如果我有任何錯誤,請隨時糾正我。 但我環顧四周,發現大約 75% 的 WordPress 網站仍在運行 MySQL 5.7 版本。 我想我想知道的一件事是——MySQL 資料庫是否有點像 WordPress,我通常應該保持它最新? 就像,我總是告訴人們,如果可以的話,請使用目前版本的 WordPress。 資料庫是否有所不同,人們不太可能一直切換?

CJ :一點也不,如果有的話,我想說,保持資料庫版本最新可能更為重要。 您知道,您在那裡託管所有關鍵網站、住房,更確切地說,是所有關鍵網站資訊。 因此,保持資料庫版本最新非常重要,無論是透過託管主機還是 DIY,這並不重要,你知道,方法,但絕對要確保你的資料庫是安全的並且您儲存在那裡的資訊的安全性至關重要。

DP :那麼,為什麼 MySQL 會終止像 5.7 這樣的舊版本呢?

CJ :本質上,正如我之前提到的,它只是此類技術生命週期的一部分。 因此,隨著新技術增強的出現,隨著我們發現更多人們可以使用的方法,壞人可以嘗試滲透系統。 您知道,安全性仍然是首要考慮因素,對於 MySQL 等不同技術來說也是首要任務。 因此,隨著 5.7 版本的結束,新版本 MySQL 8 已經推出幾年了,它肯定包含了許多不同的安全性和功能增強功能,這些增強功能將確保您的網站安全且可靠。正在盡可能地發揮最佳功能。

DP :您提到 MySQL 8 已經發布幾年了。 MySQL 8.1 現在已經發布了,這仍然是一個前沿版本,還是人們應該使用的穩定版本?

CJ :是的,很好的問題。 MySQL 8.1 於今年 7 月發布,正如您所說的,這是一個前沿版本,它仍處於其生命週期的非常非常早期的階段。 它尚未達到長期支持,而長期支持通常意味著任何需要解決的錯誤或修復在大多數情況下都已完成。 該版本已經發布一段時間了。 它已被相當廣泛地採用並且穩定。 MySQL 8.1 幾個月前剛發布,尚未完全達到這一狀態。 因此,由於這個原因,MySQL 8 是唯一得到完全支援並且處於長期支援狀態的版本。

DP :那麼如果 WordPress 使用者要從 5.7 或他們正在使用的任何版本升級到 8,他們應該採取哪些步驟? 例如你可以為他們安排什麼通往 MySQL 8?

CJ :是的,所以,首先,您肯定會想要啟動某種開發環境,以針對新版本的 MySQL 8.0 測試您的網站和資料庫。 有很多方法可以做到這一點。 特別是使用 WP Engine,您可以利用我們的本地開發測試環境,並且我們的支援中心提供了大量文檔,可以幫助您準確了解如何測試您的網站、您應該注意的關鍵事項、特定錯誤以及可能觸發的不同內容,如何調試不同的PHP 和其他文件類型以查找錯誤或可能表明與新版本不相容的不同內容。

謝謝。 這樣,您就可以解決這些問題並確保您的網站已準備就緒。 但即使進行了這樣的測試,無論您是否使用主機,也就是說,這是一個為您提供這些功能的託管主機,確保您的站點能夠正常運行並且能夠正常運行是非常重要的在執行升級之前先在新版本上做好準備,只是為了防止因未測試而造成損壞或任何類型的關鍵網站故障。

DP :您提到,如果您是 WP Engine 客戶,則可以享受本地支持,但本地支援可在 WP Engine 之外使用。 據我了解,它仍然是本地開發測試的首選,對吧? 就像您是否是 WP Engine 客戶一樣,您可能會啟動一個本機執行個體來測試新資料庫。

CJ :100%,非常棒。 是的,無論您是否使用 WP Engine,Local 仍然是開發測試的標準,並且您不必成為 WP Engine 客戶即可利用它。

DP :這是否也意味著——這是一個新手問題,正如我們在演出前所說的那樣,我知道不要在 WordPress 上升級我自己的資料庫——但本地環境是最方便的方法測試一下? 這是最好的方法還是我想我得到的是,有時我可能會啟動一個新的線上暫存環境,然後嘗試類似的方法,我認為這是不好的做法,但我希望你能友善告訴我為什麼。

CJ :是的,這是一個很好的澄清,我想,當我們說本地測試環境時,要明確一點,你知道,對於很多人來說,能夠將你的網站拉到你的機器上,然後,然後在本地進行測試,嗯,在本地,你知道,從字面上看,呃,在你的機器上進行本地測試,是一種更安全的測試方法。 您只需確保對您的網站、您的生產環境沒有影響,您就能夠測試各種不同的場景,而不會對您的即時生產環境產生任何潛在影響。 但這就是說,如果您想真正確保您的網站在這些即時生產環境中表現良好,您可以選擇啟動實際的測試伺服器,這是一種生產環境,但您已經擁有了登台和您可以測試的開發站點。 我想,這只會給你更多一點信心,與本地相比,你將獲得更多的一對一體驗,在本地環境中可能會產生某些結果,不會在生產環境中複製。

因此,這實際上僅取決於用戶和您的網站以及您需要完成的任務。 因此,無論是在臨時或開發環境中的生產伺服器上進行測試,還是在您的電腦上進行本機測試,主要目標只是確保您在切換到更新版本之前遵循一些測試步驟。

DP :你知道,卡門,我想我們將短暫休息一下,當我們回來時,我們將繼續討論開發人員在完成測試後需要了解的內容為MySQL 8 做好準備,以及可能從這個新版本中獲得的改進的一些其他因素,以及其他一些常見問題。 所以請繼續關注。 我們要短暫休息一下,然後就回來。

DP :歡迎回到 WordPress 社群播客 Press This。 我是你們的主持人,波普博士。 我正在與 WP Engine 的平台產品經理 Carmen Johnson 討論 MySQL 的生命週期終止、MySQL v5.7 以及開發人員需要了解的內容。 我想就在休息之前,我們說過,如果您準備升級,您應該做的第一件事就是啟動另一個環境並測試 v5.8 或您要切換到的任何版本。 測試一下。 確保一切正常。 我想我們沒有提到它,但有一點劇透,包括確保你的插件正常工作,你知道,不僅僅是視覺上,網站的加載,而是測試一切。 一旦人們測試了他們的功能,卡門,他們下一步該做什麼?

CJ :是的,很好的問題。 因此,一旦您完成了測試週期並且確信您的網站已準備好升級,那麼它只是為升級本身做準備,並且根據您託管網站的方式,這可能看起來非常不同。

因此,舉例來說,如果您是 WP Engine 客戶,並且您使用 WP Engine 來託管您的網站,我們將代表您處理升級流程。 如果您是我們的客戶,您可能已經收到了我們關於此升級浪潮的通信,而升級浪潮已經在進行中,我們實際上正在為您處理將您的網站從 MySQL 5.7 升級到 8.0。 如果您不是由我們託管並且正在利用 DIY 自己動手解決方案,那麼您當然需要自己處理升級以避免將自己置於安全漏洞的風險中,並且 MySQL 提供了公共文件來幫助您完成該過程。但無論哪種情況,您都需要這樣做以避免使用不再受官方支援的版本。

如果您不進行 DIY,但您只是在 WP Engine 之外的其他託管主機上,我強烈建議您盡快與您的主機聯繫,了解他們的此升級計劃,因為它是影響所有WordPress 用戶,無論託管提供商如何。

DP :我知道停機,如果您要進行這樣的升級,您應該為停機做好準備。 我想部分因素是,即使你做了測試,也許還是會發生一些事情。 所以,你知道,做好停機的準備。 但如果我是 WP Engine 客戶或其他主機,他們會在後面為我進行類似的升級,有點像隱形,對吧?

他們正在幫我處理。 我還有機會休息嗎?

CJ :是的,這是一個非常好的問題,而且絕對是需要做好準備的事情,因為您肯定會遇到停機時間 - 升級會導致資料庫重新啟動。 因此,無論您的主機或 DIY 或其他什麼,您的網站都會經歷停機,因為您的資料庫在 5.7 上停機並在較新版本上恢復。

對於 WP Engine 客戶來說,好處是我們根據您的標準維護窗口來安排這些升級週期。 因此,根據您所在的位置,升級本身將在您已傳達的維護時段內進行。 因此,在維護時段之外不會出現任何意外停機。 但是,如果您沒有主機並且沒有進行設置,您可能需要為您的客戶提供某種付費維護或其他服務,以確保他們不會有像那些人一樣的糟糕體驗。資料庫正在重新啟動。

DP :那我們來談談這個好消息。 假設這吸引了許多人,那麼 75% 的 WordPress 開發者有望遷移到 8.0 或更高版本。 他們可以從這樣的資料庫升級中獲得什麼好處?

CJ :是的,肯定有一些好消息,因為 MySQL 8 有一些明顯的優勢,特別是一些效能和功能增強,例如透過 OpenSSL 改進增強安全性、新的預設驗證方法、引入 SQL 角色、打破超級特權密碼強度增強,大量技術術語基本上等同於MySQL 8.0 真正增強的安全性,以及改進的效能。 NODB 有一些增強功能,可以提供更好的讀取、寫入、工作負載效能、IO 綁定工作負載,基本上確保 NODB 緩衝區效能良好。 其中包括開發人員喜歡的東西,例如改進的 SQL 程式碼組織和可讀性,並引入了一些新功能,例如 SQL 視窗函數和公用表表達式。 其中還有一些增強的 JSON 功能,以及 MySQL 8 特有的整體可靠性。

因此,只要知道您將使用最安全的 MySQL 版本,肯定會帶來一些好處。

DP :是的,我覺得我在這裡聽到的主要是安全問題。 您確實簡單地提到,程式設計師將有幾種新的工作方式。 因此,這種新方法的標準化使得開發人員可以更輕鬆地使用 MySQL,但我聽到的主要是 SSL 升級和更改使用者權限的劃分方式。

我不知道超級用戶的事。 這聽起來有點草圖。 就像,如果被黑了,那聽起來很可怕。 但是,無論如何,這聽起來很像我們正在談論的,不是典型的速度改進,儘管可能有一些,但聽起來很大程度上就像這是 MySQL 的重大安全升級。

CJ :絕對,絕對。 所有跡像都表明這一點。 這主要是這個新版本帶來的許多安全增強功能。

DP :我有點想知道,我不知道你是否能告訴我這一點,但因為我正在了解這一點,因為這不是,我不經常談論 MySQL 資料庫。 我只是一直盯著這個對我來說毫無意義的數字。 卡門,我希望你能給我解釋一下。 我們只是看到所有這些版本,5.1、5.2、5.7,然後就是與 8.0、然後 8.1 的差距,這一切都與 WordPress 的工作方式有很大不同。 這些版本似乎相隔數年。 我不知道,您是否理解命名約定和編號約定以及為什麼我們從 5.7 變為 8?

CJ :是的,這是一個很好的問題,實際上這是我們 WP Engine 經常遇到的常見問題。 不幸的是,我將不得不讓你失望,並告訴你我沒有一個好的答案,除了 MySQL 沒有發布 5.7 和 8.0 之間的任何新版本。 顯然有子版本,所以 5.7.x,但 5.7 和 8.0 之間沒有其他主要版本。 如果有人知道為什麼他們在八點之前跳過這麼多關卡的問題的答案,我很想聽聽。

DP :我們必須調查一下 Oracle。 但如果是的話,那就是雙關語了。

希傑:是啊

DP :至少他們沒有像蘋果那樣做 iPhone 9、iPhone X、iPhone XR,對吧?

希傑:是的。 至少有一些韻律和理由。

DP :是的。 好的,我們將再進行一次短暫的休息,當我們回來時,我們將繼續與 Carmen 討論 MySQL 8 和 5.7 生命週期的結束,所以請在短暫的休息後繼續關注更多內容。

DP :歡迎回到 WordPress 社群播客 Press This。 我是你們的主持人 Doc Pop,今天與 WP Engine 的平台產品經理 Carmen Johnson 談論 MySQL 5.7 的生命週期結束以及遷移到 MySQL 8 的優勢。而且,如果你碰巧是這樣,因為我我確信有人會說,每次我們說MySQL 時,它也可能是“MYSQL L”,對吧? 或者 MySQL。 顯然,Oracle 在他們的網站上所說的就是標準化發音,但是在說了這麼久 my-sequel 後,我很難習慣任何其他方式來表達它。

CJ :我也有同樣的問題。

DP :沿著這些思路,我實際上想知道卡門,我們已經討論了您對將要升級的人的建議以及新版本的好處。 我在節目前面提到過,我已經習慣了 WordPress 的工作方式,而且我忘了在節目開始前查一下,但我知道 WordPress 幾乎支援所有版本的 WordPress,就像當他們正在談論停止對WordPress 3 或類似舊版本的支援。 而MySQL則完全相反。 我們正在談論,8.0 之前的最後一個主要版本是 5.7,他們正準備結束最後一個版本的生命週期。 所以他們不像 WordPress 那樣支援多個主要版本。

我想,為了回答我的問題,卡門,我只是想知道你是否對他們如何處理這個問題有任何想法,你知道,他們是否很好地與用戶溝通了? 您對他們決定終止前一個版本(公認的已有七年歷史)的決定有何看法?

CJ :所以,你知道,在我個人看來,坦白說,我不認為他們對即將到來的生命終點有應有的直言不諱。 但公平地說,除了 Oracle 官方支援的版本之外,還有許多 MySQL 的實作。 所以,你知道,能夠捕獲那麼大的範圍並有效地運行該程式。 這可能只是他們無法做到的事情。 但具體到甲骨文,我確實認為他們可以更加直言不諱。 當然,您確實提到這個版本8.0 已經發布了相當長一段時間了,但是隨著生命週期的結束,特別是對於仍然使用這個舊版本的人來說,它會帶來潛在的安全風險,重大的安全風險,我確實認為他們有機會更直言不諱地鼓勵用戶儘早採用 MySQL 8。

DP :我想,這將面向那些在非託管主機上託管的人,他們可能擁有這種長期運行的網站,也許他們一直保持 WordPress 版本最新,但你知道,他們還沒有更新任何其他內容。 任何外部的東西,像是他們的資料庫,他們都沒有更新過,比如說,你知道,六、七年了。

因此,這些人如果沒有聽說過,並且他們的主機沒有將他們升級為託管、託管伺服器上的一種特權,那麼他們可能會遇到安全性問題。 也許不是馬上,不像 11 月 1 日那樣,但你知道,明年,他們可能仍然不知道有新版本並且不再支援 MySQL 5.7。 因此,您所說的這些用戶可能會面臨風險,因為他們沒有聽說過這一點。

CJ :是的,絕對是。 既然你確實提到了,我實際上要告訴你一個小秘密。 你知道,可能有人使用的 MySQL 版本甚至早於 5.7。 版本已經終止,他們只是沒有意識到這一點,因為他們沒有與主機或某些能夠幫助他們保持這些版本最新的提供者合作。

所以,是的,如果您自己託管或 DIY,並且您知道,只是不以這種方式與 MySQL 社群聯繫在一起,那麼這絕對是存在的風險。

DP :嗯,卡門,我想這就是我的所有問題。 如果收聽此內容的人對升級或 WP Engine 如何處理它還有其他疑問,您是否建議他們聯繫或尋找更多想法?

希傑:當然。 因此,我們確實在支援中心策劃了很多內容,幫助人們為遷移到 MySQL 8 做好準備。因此,您可以訪問 wpengine.com 反斜杠支持反斜杠為 MySQL 8 做準備。我們那裡有大量信息這個生命週期到底是什麼,它對您意味著什麼,如何測試您的網站,並且一如既往,作為客戶,如果您對您的網站有任何具體問題或需要幫助,您絕對可以聯繫我們的支援團隊測試,或者只是想了解升級本身。

DP :嗯,我真的很感謝你今天加入我們,卡門。 如果您喜歡這一集,我想建議您在 Torquemag.io 上查看更多劇集。 我們盡力提供每集的轉錄版本,以便您可以深入了解。

您也可以在您最喜歡的播客應用程式上訂閱 Press This。 我的天氣是陰天。 感謝您收聽 Press This,這是 WMR 上的 WordPress 社群播客。 您可以在 Twitter 上的 Torque mag 上關注我們的冒險故事,或者如我之前提到的,您也可以訪問 Torquemag.io 來查找先前的劇集。

您可以在 RedCircle、iTunes、Spotify 上訂閱,或直接從 WMR.fm 下載。 我是你們的主持人,人氣博士。 我透過在 WP Engine 中的角色來支持 WordPress 社區,我喜歡每週在 Press This 上關注該社群的成員。