很多朋友用Wordpress构架的Blog往往会发现自己Blog的使用时间长了,页面的读取速度会慢慢的降低,其实这有很大一部分因素是由于Wordpress的数据库的冗余了。定期优化Wordpress的数据库,是保证Wordpress正常和快速工作的根本。

  在这里Rock教大伙几招优化数据库的方法,咳咳…要开始讲了哦。 :grin:

  首先最简单的方法就是利用自己的数据库管理系统做自动的优化,最常用的应该就是phpMyAdmin了吧,优化方法如图(勾选所有的表,选择优化表):

youhua1

  接下来有两个比较实用的并且有效的减少数据库大小的方法。一个是删除RSS缓存(并关闭RSS缓存功能),另一个是删除自动保存缓存(并关闭RSS缓存功能),在操作之前,请务必先将数据库备份好哦!

  那么来删除RSS缓存。什么是RSS缓存?如果你打开你的Wordpress数据库,你会发现在 wp_options这张表里有若干的占用大量空间的形如rss_f07b6018d7bc77b2520b5ec4296f3e66_ts的数据,它们占用体积庞大,往往占到数据库的一半以上。这些文件的存在当然是有原因的,我们每次打开Wordpress管理后台就能看到一串RSS消息,例如哪些网站链接到你了。Wordpress又有什么新闻了。显然对大多数人毫无意义,但求一删而后快。

  删除方法很简单,在wordpress数据库中选择只在wp_options中搜索 rss_ 然后把类似rss_xxxxxxxxxxxxx的结果都删除掉(如下图),最简单的做法就是下载Clean Options这个插件。记住,不管你用什么方法删除后,记得如前所述,优化一下你的数据库。

youhua2

  但是即使这样删除后,你再次登陆后台又会有新的rss_xxxxxxxxxxxx这类数据生成,因此如果你要彻底关闭这个功能,那就得修改/wp-admin/index.php文件。在其中找到如下的语句,全部删除,然后再重复上面删除rss_的方法,这些垃圾文件就彻底与你无缘了。 :roll:

<script type=”text/javascript”>
jQuery(function($) {
var ajaxWidgets = {
dashboard_incoming_links: ‘incominglinks’,
dashboard_primary: ‘devnews’,
dashboard_secondary: ‘planetnews’,
dashboard_plugins: ‘plugins’
};
$.each( ajaxWidgets, function(i,a) {
var e = jQuery(‘#’ + i + ‘ div.dashboard-widget-content’).not(‘.dashboard-widget-control’).find(‘.widget-loading’);
if ( e.size() ) { e.parent().load(‘index-extra.php?jax=’ + a); }
} );
});
</script>

  现在Wordpress升级到了2.7,很多朋友发现这个版本里/wp-admin/index.php文件并没有像我所说的上面的代码。不要急,教你另一个禁用生成rss_数据的方法。那就是打开你的wp-config.php在下面配置里添加一行如下代码,就实现了禁用。

define(‘MAGPIE_CACHE_ON’, 0);

  最后要讲的就是删除自动保存缓存以达到优化数据库的功能。我们每次写新的日志或者页面,Wordpress都不停的给我们自动保存,最后自动保存的数据往往比你日志的数据更大,而当你文章写好之后,这些数据其实已经没有多少意义了。留着占用数据库空间未免可惜。删除的方法很简单,如下图phpMyAdmin中选定你的数据库,再选定sql这个tab,输入如下语句并执行就可以了。

DELETE FROM wp_posts WHERE post_type = “revision”;

 youhua3

  当然,如果你也不需要Wordpress这个自动保存功能的话,那么还是打开你的wp-config.php在下面配置里添加如下一行代码。

define(‘WP_POST_REVISIONS’, false);

  嗯,搞定了:cool: ,顺带一提的是上面那种rss_ 的方法强烈建议大家去做,为什么?你可以先把你的数据导出来,然后按我的方法把rss_数据删除后,再把数据导出来比较一下。你会发现你的数据库大小缩到了以前的三分之一以下,这下明白了rss_占用了你多少数据库空间了吧。 :evil: