如何完成 MySQL 性能调优 (4 个关键提示)

如何完成 MySQL 性能调优 (4 个关键提示)

如何完成 MySQL 性能调优 (4 个关键提示)

MySQL 是 web 服务器上最流行的数据库管理系统之一。如果你在运行一个 WordPress 网站,很有可能使用 MySQL 作为数据库。这使得你必须了解如何完成 MySQL 性能调优。

通过优化 MySQL,我们的意思是优化你的数据库,使软件能够更快地响应查询。最终,这可以缩短加载时间,让网站变得更漂亮。此外,如果你正确地维护了数据库,那么即使数据库的大小在增长,它也应该继续提供高性能。

在本文中,我们将简要介绍 MySQL 是什么以及它是如何工作的。然后,我们将探讨如何使用四个基本技巧来执行 MySQL 性能调优。

MySQL 是什么,它是如何工作的

动态网站将信息存储在数据库中,这是一个花哨的术语,指的是包含大量信息的复杂表格结构。数据库使你能够存储变量并 “查询” 它们以获得所需的信息。例如,当你加载一个 WordPress 网站时,内容管理系统 (CMS) 将连接到它的数据库以获得它需要的信息。

如果由于某些原因 WordPress 无法连接到数据库,你可能会遇到诸如 “MySQL Server Has Gone Away” 或 “MySQL 1064” 之类的错误。MySQL 是开源软件,可以让你创建和管理数据库。它远不是唯一的在线数据库管理系统。然而,它确实在市场份额方面占据主导地位,大约 15% 的网站使用它。

数据库管理有不同的方法,MySQL 使用 “关系” 和 “客户端 - 服务器” 模型。这句话的意思是:

  • 关系数据库 —— 这种类型的数据库将信息分解成表。多亏了关系模型,你能够使用 “键” 或唯一标识符连接来自多个表的数据。
  • 客户机 - 服务器模型 —— 在这种模型中,数据库驻留在服务器中,而网站则是客户机。浏览器向你的网站发出请求,而网站反过来又会查询数据库。

因为 MySQL 是开源软件,所以有很多分叉可用。

学习如何让 MySQL 自己运行得更快仍然是一项有价值的技能,然而,主要是如果你的 web 主机不关心为你优化。让我们来谈谈优化需要什么。

完成 MySQL 性能调优的 4 个技巧

如果你使用 WordPress,想要学习如何让 MySQL 运行得更快,最好的办法不是专注于特定的配置。相反,你需要调整数据库以匹配使用 WordPress 的方式。我们来谈谈这意味着什么。

1. 保持你的 MySQL 版本最新

大多数网络主机会自动为你更新 MySQL 到最新版本。但是,如果你可以完全控制服务器,则需要手动更新数据库管理系统。由于你使用的是 WordPress,你可能了解保持软件更新的好处。MySQL 性能调优有很多优点,比如:

  • 新版本修补了软件的安全漏洞。
  • 最新版本的 MySQL 经过了更好的优化,因此速度更快。

更快的数据库管理软件直接转换为更低的加载时间。但是,你可能不知道你使用的是什么版本的 MySQL。如果你有对服务器的完全访问权限,你可以启动命令行并运行以下命令:

mysql -v

-v 参数将返回关于服务器使用的 MySQL 版本的信息。你可以将该信息与 MySQL 官方网站上的最新版本进行比较,以查看可用的更新版本。如果你不习惯使用命令行,你可以通过 WordPress 仪表板找到你使用的 MySQL 版本。

首先,访问仪表板并转到工具 > 网站运行状况。接下来,打开 Info 选项卡,点击 Database

根据你的 MySQL 版本,软件可能会自动更新。如果没有,你可以使用命令行将 MySQL 更新到最新版本。

2. 检查数据库中的孤立表

通常,你从网站上卸载的插件和网站主题会留下数据。这可能是由于糟糕的编码标准,或者因为插件 / 主题决定存储这些数据,以防你想重新安装它们。这种方法背后的想法是,将设置和配置存储在数据库中将节省你的时间和工作。

然而,所有这些未使用的表都可能导致数据库膨胀,这反过来可能会降低查询速度,这取决于服务器的能力。理想情况下,你将在卸载插件后进行清理,以防止孤立的表和数据积累。有两种方法可以完成这个任务:手动或使用插件。

注意

在任何情况下对数据库做任何更改之前,我们建议你完全备份你的 WordPress 站点。即使你的主机每天都做备份 (就像我们做的那样),你也可以在需要的时候恢复你的站点。

一旦进入 phpMyAdmin,就可以使用该软件的搜索功能来查找与特定插件相关的孤立表。这个方法的问题是很难知道要使用什么查询,除非你要清理的插件有全面的文档。

例如,Yoast SEO 建议在卸载插件后使用 wpso 查询来查找与插件相关的表。使用 phpMyAdmin 运行快速搜索将返回一个包含跨不同表的条目列表:

在数据库中寻找与 Yoast SEO 相关的条目

3. 确定 MySQL 是自动加载哪些数据

每个 WordPress 数据库都包含大量的表格。其中一个表名为 wp_options,它包含如下信息:

  • 插件和主题设置
  • 你的网站 URL、博客名称、描述等等

如果你使用 phpMyAdmin 检查 wp_options 表,你将注意到一个名为 autoload 的列。WordPress 在自动加载下检查有 yes 条目的行,然后在每次有人访问你的网站和访问它的任何页面时加载这些数据:

检查 wp_options 自动加载数据

开箱即用,WordPress 应该只自动加载关键数据。然而,一些插件和主题会向 wp_options 中添加数据,并将其配置为自动加载。随着时间的推移,自动加载数据会减慢响应时间,就像你在打开电脑时设置了太多要自动启动的程序一样。

如果你的 WordPress 网站运行缓慢,并且你在 wp_options 中看到很多与插件相关的条目,我们建议你检查一下 WordPress 中有多少数据自动加载,并确定哪些插件你可以禁用。

4. 清理修改、草稿、垃圾评论和帖子

当你使用 WordPress 时,你的网站会积累很多未使用的数据。例如,WordPress 会自动为你的文章保存一些修改和草稿,这取决于你对它们做了多少修改。随着时间的推移,所有这些数据可能会使数据库膨胀,因此定期清理这些条目是一个好做法。最好的方法是使用插件,如 Advanced Database Cleaner。

你不需要使用插件的高级版本来完成这个任务 (不像处理孤立的表)。一旦你启用了插件,你可以到 WP DB Cleaner 选项卡并查看常规清理部分。在那里,你会发现插件可以帮助你从数据库中删除的所有瞬态数据的完整列表:

使用高级数据库清理器清理你的数据库

你可以选择要 “清理” 或清空的表,然后手动运行该流程。或者,该插件允许你为你选择的表安排清理,并将它们配置为定期运行。最后一个选项是你最好的选择 —— 它意味着你将少一项需要担心的任务。但是,我们建议你不要过于频繁地重新配置数据库清理。这样,你仍然可以在需要的时候使用之前的草稿。

总结

MySQL 性能调优的好处有很多。然而,你想优化数据库的主要原因是提高它的性能,所以你的网站总是尽可能快地加载。因为你使用的是 WordPress,所以有很多方法可以在不改变软件配置的情况下执行 MySQL 性能调整。如果你有兴趣学习如何让 MySQL 运行得更快,这里有四个建议:

  • 让你的 MySQL 版本保持最新。
  • 检查数据库中的孤立表。
  • 确定 MySQL 自动加载哪些数据。
  • 清理修改、草稿、垃圾帖子和评论。