【问题标题】:WordPress DB & QueriesWordPress 数据库和查询
【发布时间】:2021-10-08 17:12:54
【问题描述】:

我们的 WordPress 查询使我们的初始响应时间约为 10 秒!这使得网站非常缓慢。该网站已全面优化,删除了未使用的 css/js、缩小、延迟和异步、图像优化等。

首先,我想将数据库中的所有表从 myISAM 更改为 innoDB。我已经在我们 DEV 网站上的所有表格上进行了此更改,似乎没有问题。我只是想确认这样做是否安全?

我也有这些表: https://imgur.com/a/HVYqZn4

在顶部将自动加载更改为“否”是否安全?

谢谢

【问题讨论】:

  • 我不认为设置数据库引擎会有所帮助。可能查询很慢。首先,我建议您发现那些缓慢的查询。然后尝试调试它们,例如使用解释和优化。
  • 我确实有查询监视器,但在未缓存的页面上大约有 1000 个查询。如果我能够识别来自插件的慢查询,如果我们需要使用该插件,我将如何优化它?

标签: php mysql wordpress woocommerce


【解决方案1】:

是的,将 WordPress 的表从 MyISAM 更改为 InnoDB 是安全的。 (InnoDB 会占用更多磁盘空间,因此请确保您的 MySQL 服务器上有可用的磁盘空间。)

您还应该尽最大努力确保您的生产站点在 MySQL (8+) 或 MariaDB (10.2+) 的最新版本上运行,因为软件会随着时间的推移变得越来越快。如果您对如何操作有疑问,请咨询您的托管服务提供商。

不,在任意行上将wp_options.autoload 从“是”更改为“否”是不安全的。使用这些行的核心软件、插件或主题希望它们能够自动加载。如果不是,您将经历随机破损。并且该软件可能会创建新的自动加载行以尝试恢复。

你能做什么?如果您以前使用过某些插件并且不再使用,您可以删除它们的wp_options 行。有些插件在使用wp_options 时很草率。但要小心,你可能会再次破坏东西。

有一个名为Advanced Database Cleaner 的插件。它是摆脱 WordPress 数据库中旧版本内容的众多插件之一。运行它,或者类似的插件,看看你是否可以清除任何垃圾。它将使您的数据库更小,因此速度更快。

如您所知,有一个名为 Query Monitor 的插件可让您检查 WordPress 实例使用的 MySQL 查询。我建议您将它安装在您的开发系统上,并使用它来确定哪些查询导致速度变慢。它有一种方法可以按查询花费的时间对查询进行排序。如果您仍然需要帮助,请再问一个问题。

有一个名为 Index WP MySQL for Speed(由我和 Rick James 开发)的插件,updates the MySQL indexes 可以更好地处理最常导致性能问题的 WordPress 查询。作为奖励,此插件会在必要时为您执行 MyISAM -> InnoDB 更新。它可能会有所帮助。它肯定有助于从 wp_options 自动加载,并且有助于解决一些 WooCommerce 店面渲染问题。

最后,您的网站可能已经超出了您的托管服务。预算服务限制了它们的运行速度。这使他们可以托管更多站点并使用相同的设备赚更多的钱。但这些限制让大型网站变慢了。

【讨论】:

    猜你喜欢
    • 2023-03-29
    • 1970-01-01
    • 2016-03-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-11-15
    • 2011-05-10
    相关资源
    最近更新 更多