按此:您的站点准备好迎接 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 上关注该社区的成员。