找回密码
 立即注册
查看: 5787|回复: 0

wordpress3.3.2数据库结构分析及简单优化

[复制链接]
发表于 2012-11-16 13:21:34 | 显示全部楼层 |阅读模式
阅读前,请注意:这里的wordpress版本是3.3.2。由于wordpress版本的更替,不同版本之间的数据库设计会有所区别,但是总体上基本是一致的。
一、wordpress3.3.2数据库结构设计描述
wp_users用户基本信息表
  wp_usermeta用户额外信息表
wp_comments评论表
  wp_commentmeta评论元数据,其实主要是插件Akismet的记录,Akismet会记录把每个评论的修改记录,主要是你批准了某个评论,删除 某个评论,审核通过某个评论的各种历史记录,Akismet插件虽然强大,但是会造成该表的臃肿。
wp_links链接信息表
wp_options基本配置信息表,由于该表通常作为插件存储数据的一个地方,所以该表也是可能造成数据库臃肿的。
wp_posts文章信息表,由于编辑文章时wordpress会自动保存草稿,所以会存有很多历史版本的数据,也会造成数据库臃肿。
  wp_postmeta文章的一些元信息,比如文章最后一次编辑时间等,但是由于主题的多样性,一些主题可能会保存一些文章的相关信息到 该表中,所以删除某些数据前务必确定对文章没有影响。比如一些主题会把,文章中出现的图片的alt值保存在该表中。
wp_terms分类信息表,其实存放着分类、标签、链接信息
  wp_term_taxonomy决定wp_terms中的分类属于category文章分类、post_tag文章标签、link_category链接分类三个中的哪个。
  wp_term_relationships分类关联表,其object_id与文章wp_posts的ID关联,即object_id就是wp_posts表的ID,然后与wp_term_taxonomy表的 term_taxonomy_id关联,从而知道某篇文章到底属于哪个分类、哪个标签,哪个链接属于哪个分类。

二、wordpress3.3.2数据库简单优化
经上数据库分析,可知需要优化清理的表有wp_commentmeta、wp_options、wp_posts、wp_postmeta四个表。
  ***清理wp-commentmeta表*** akismet插件保存的评论修改记录
  •     delete from wp_commentmeta where meta_key='akismet_history';
  ***清理wp_posts表----自动保存草稿,历史版本***
  暂时觉得revision类型的文章的post_status不可能是publish
  •       delete from wp_posts where post_type='post' and post_status='auto-draft';
  •       delete from wp_posts where post_type='revision' and post_status!='publish';
  ***清理wp_options表***
  不同的rss插件保存的前缀不同,下面的前缀只是针对我的插件而已,有的插件前缀是_rss,注意举一反三,不要盲目照搬。
  •       delete from wp_options where option_name LIKE "_transient%";
  •       delete from wp_options where option_name LIKE "_site%";
  ***清理wp_postmeta***
  好像是关于文章的最后编辑时间、锁定信息的,不太清楚,但是网上大多的资料都说可以如下删除,99%不会出错。
  •       delete from wp_postmeta where meta_key = ‘_edit_lock’;
  •       delete from wp_postmeta where meta_key = ‘_edit_last’;
本文到此结束,再次提示,优化数据库请务必做好备份,务必确定不会影响你使用的主题,切记切记。

原文链接: wordpress3.3.2数据库结构分析及简单优化

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|第一站论坛 ( 蜀ICP备06004864号-6 )

GMT+8, 2024-5-8 20:52 , Processed in 0.069367 second(s), 21 queries .

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表