我使用的数据库是mysql5.7版本,typecho创建后可以通过以下sql语句执行达到提高查询效果,执行前需快照或者备份数据库以防重要数据丢失!还有nginx与php都可以继续优化,目前我的站点除了CDN字体加载有延迟完,几乎秒开。
1、内容表添加复合索引
ALTER TABLE `typecho_contents` ADD INDEX `idx_type_status_created` (`type`, `status`, `created`);2、删除默认的created 单列索引
ALTER TABLE `typecho_contents` DROP INDEX `created`;3、评论表添加复合索引
ALTER TABLE `typecho_comments` ADD INDEX `idx_cid_status_created` (`cid`, `status`, `created`);4、删除单列索引
ALTER TABLE `typecho_comments` DROP INDEX `cid`;
ALTER TABLE `typecho_comments` DROP INDEX `created`;
5、用于文章与分类的关联查询
ALTER TABLE `typecho_relationships` ADD INDEX `idx_mid_cid` (`mid`, `cid`);6、用于分类/标签的排序显示
ALTER TABLE `typecho_metas` ADD INDEX `idx_type_order` (`type`, `order`);完成以上三个步骤,大部分都覆盖了。
-- 查看的索引
SHOW INDEX FROM `typecho_contents`;
SHOW INDEX FROM `typecho_comments`;
SHOW INDEX FROM `typecho_relationships`;
SHOW INDEX FROM `typecho_metas`;最后可以查看索引使用频率,看是否生效成功,总结:一个简单的联合索引就能提高很多很多速度,在我的工作中也是如此,若查询得慢,就会使用这样子的方法。
SELECT * FROM sys.schema_index_statistics
WHERE table_schema = '数据库名称'
AND table_name LIKE 'typecho_%'
ORDER BY rows_selected DESC;查询出索引的索引情况,还可以把检测结果给ai,让他进一步提出优化意见。
OPTIMIZE TABLE `typecho_contents`;
OPTIMIZE TABLE `typecho_comments`;还可以执行上面的命令,每月一次的表优化,恭喜你,完成了Typecho数据库的核心优化。
最后更新 2026-03-28

涉及数据库操作,风险很大呀
索引问题不大,查询速度快慢,不涉及底层的表架构改变。
速度起飞!
没错,舒服的很
页面感觉和纯html差不多快了
对比两年前真的加载不出来,现在网络好,又有ai优化,又有cdn
非常快!可惜这主题没更新了,都用好多年了没找到其他合适的。
是的,一出就是巅峰,用得很舒服,能一直维护就好了。
太强了佬!我也来学习一下
共同进步,反馈的评论后效果,我估计是数据库的原因。
速度确实可以。我有点不敢试,怕数据库直接搞坏。
排查错了,是我的eo加速缓存这里的页面了。其实可以试试,前提是有快照哈哈
评论受到了影响,我检测是不是数据库的原因
这个索引和everything的索引一样?我去问问ai
加了就有目录,比如75也,它就不是0-75了,划分0-50、50-100、100+,直接定位到第二部分。
typcheo本来就轻量,感觉比WP快!
我的服务器只能用ty,wp对我来说臃肿了。