【发布时间】:2017-11-10 16:28:57
【问题描述】:
我们有一个运行 WordPress 4.8 的 MariaDB 数据库,在 wp_options 表中发现了很多 transient 命名记录。该表使用插件进行了清理,并从约 800K 记录减少到约 20K 记录。仍然获得关于表的缓慢查询条目:
# User@Host: wmnfdb[wmnfdb] @ localhost []
# Thread_id: 950 Schema: wmnf_www QC_hit: No
# Query_time: 34.284704 Lock_time: 0.000068 Rows_sent: 1010 Rows_examined: 13711
SET timestamp=1510330639;
SELECT option_name, option_value FROM wp_options WHERE autoload = 'yes';
找到另一个创建索引的帖子并做了:
ALTER TABLE wp_options ADD INDEX (`autoload`);
这花费了太长时间并且使网站离线。我在进程列表中发现了很多“等待表元数据锁定”。取消 ALTER TABLE 后,所有内容都再次运行,负载很高,当然慢查询日志中有条目。我还尝试使用离线 Web 服务器和干净的进程列表创建索引。如果我今晚再尝试创作,应该需要这么长时间吗?
【问题讨论】:
标签: wordpress mariadb mysql-slow-query-log