首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >大型WordPress数据库

大型WordPress数据库
EN

Stack Overflow用户
提问于 2019-01-24 21:46:25
回答 2查看 2.6K关注 0票数 1

我的数据库大小超过10 is,它减慢了网站的速度。我想将它分开,并将这些DB分离到专用服务器上。我在用MariaDB。

如何分割WordPress数据库?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-01-24 22:22:43

看看WPSE:https://wordpress.stackexchange.com/questions/2825/wordpress-sharding-which-multi-db-plugin-to-use上的答案

尽管如此,大型数据库本身并不是一件坏事。然而,糟糕的是未优化的数据库膨胀的数据库(许多插件只是转储数据(通常是后置或选项表),以及未优化的数据库查询

这里有几个DB优化插件,我会先考虑使用,或者手动挖掘。确保您的options表尽可能精简,并确保删除任何和所有孤立的数据(例如,不再有父帖子且不被引用的媒体图像)。我看到插件给留下了数百兆字节的值,除了选项表中无用的数据之外。当它被加载到每一个页面请求时,这个站点就会变成糖蜜状的状态。

从一个纯粹的轶事的角度来看,我目前正在对一个缓慢/臃肿的十年前的网站进行地面重构。它使用了大量插件,数据库在许多表中都有大量重复的信息,有许多元查询(它们没有索引或键控,因此在大型站点上非常慢),选项表中存储了大量无用/过时的选项。

新的网站充满了100%可行的测试数据,数据库现在大约有3到4位。问题是,我的表得到了优化,列被适当地编入索引,甚至还有自定义的关系post表将post类型连接在一起。我有大约45万个不同类型的帖子,使用$wpdb类的简单查询,它可以在一秒钟的时间内筛选和加载几十个或数百个帖子,而不会影响内存的使用。

最重要的是,在考虑拆分/分片数据库之前,您几乎可以肯定地看到了、优化、,在考虑拆分/分片数据库之前,会对数据库进行裁剪。

另一种选择是改进硬件,即拥有一台主机和一台数据库机器,这将固有地提高性能,因为每台机器都可以针对手头的任务进行优化,而不是共享它不需要的资源。

以下是我的一个请求的简单屏幕截图。这是一个页面从表中加载200个自定义post类型,其中包含45万条记录。每个定制的post类型都与0-20个其他post类型相关,其中一个甚至与1500其他post类型相关--尽管还没有完全优化,但它仍然几乎立即加载。

票数 4
EN

Stack Overflow用户

发布于 2019-01-24 22:49:41

请您检查一下DB内部的内容,因为与往常一样,10 DB的DB并不是很平常。这是非常不寻常的,除非你有大量的帖子或评论。检查哪个表包含最多的空间,并检查表中的哪个表。

此外,检查wp_users和wp_comments表,如果有最大的规模,那么我相信这是垃圾邮件的效果!

只需检查用户和删除垃圾邮件评论。这可能不是一个很好的解决方案,因为DB太大了。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54355790

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档