月光博客 » 编程开发 » WordPress MU优化表的脚本

WordPress MU优化表的脚本

  WordPress MU由于每建立一个新的用户都会自动建立十多张表,因此当注册大量用户的时候会建立非常多的表,引起系统的性能出现问题,我这里写了一段脚本,可以将WordPress MU中的不活动用户(从没有发布文章的用户)进行删除,以节约系统资源。PHP脚本源代码如下:

<?php

    $mysql_host  = "localhost";
    $mysql_user  = "root";
    $mysql_pass  = "";
    $mysql_db  = "wordpress";

    $mysql_mylink = mysql_connect($mysql_host, $mysql_user, $mysql_pass)
    or die ("Cannot make the connection");
    mysql_select_db($mysql_db, $mysql_mylink)
    or die ("Cannot connect to the database");

    $strsql="select * from wp_blogs where blog_id>2  ";

    $rs_query = mysql_query($strsql);
    $alls=mysql_num_rows($rs_query);

    while (($RS = mysql_fetch_array($rs_query))) {
          extract($RS);
    $blogid=$RS["blog_id"];

    $query2 = "select * from wp_".$blogid."_posts ";
    $result = mysql_query($query2);
    $num= mysql_num_rows($result);
    //print $num;
    if ($num<=2) {
  print "DROP TABLE IF EXISTS wp_".$blogid."_comments;";
     print "DROP TABLE IF EXISTS wp_".$blogid."_links ;";
     print "DROP TABLE IF EXISTS wp_".$blogid."_options ;";
     print "DROP TABLE IF EXISTS wp_".$blogid."_postmeta ;";
     print "DROP TABLE IF EXISTS wp_".$blogid."_posts ;";
     print "DROP TABLE IF EXISTS wp_".$blogid."_terms ;";
     print "DROP TABLE IF EXISTS wp_".$blogid."_term_relationships ;";
     print "DROP TABLE IF EXISTS wp_".$blogid."_term_taxonomy ;";
  print "DELETE from wp_blogs where blog_id=".$blogid.";";
    }
    }

    mysql_close ();

?>

  由此看出,WordPress MU使用起来实在不怎么样,多表结构设计的可能有问题,会带来很多麻烦。

顶一下 ▲()   踩一下 ▼()

相关文章

  1. 1
    大勇   说道:
    上面的又在打广告哟,(*^__^*) 嘻嘻……
    感谢月光为大家经常提供一些有用的帮助!
    继续支持你!
    支持(4反对(1回复
  1. 2
    小魏   说道:
    那你是让用还是不让用啊?
    支持(7反对(4回复
  1. 3
    低调年华   说道:
    你的“技术文摘”里已经被AD占满了.......
    支持(8反对(6回复
  1. 4
    guwei   说道:
    WP能全不静态就好了,COS的那个还是有问题- -
    支持(5反对(4回复
  1. 5
    jjboke   说道:
    还是 O-BLOG 好点吧?
    支持(5反对(4回复
  1. 6
    杀鸡敬猴   说道:
    我也觉得是ZBLOG好
    支持(5反对(4回复
  1. 7
    linker   说道:
    月光今天迟啦!这么晚才更新!wp功能多关注,要开英文博了。
    支持(8反对(8回复
  1. 8
    黔岭书生   说道:
    php我很滥,但也关注WP,从今起会经常光顾这里学习!
    支持(6反对(6回复
  1. 9
    thom   说道:
    认真比较开源多博客平台后,我最终还是选择了 LifeType。WPMU 在数据结构上和 LT 还有些差距。
    支持(8反对(8回复
  1. 10
    leolee   说道:
    这个脚本似乎没有进行删表

    print
    支持(5反对(6回复
  1. 11
    YY   说道:
    z-blog..
    支持(6反对(7回复
  1. 12
    coolkid   说道:
    还是觉得z-blog好 哈哈
    支持(5反对(6回复
  1. 13
    自由天空   说道:
    这样的判断标准是否过于简单?再加上一个时间限制要好一些。
    支持(5反对(7回复
  1. 14
    有志者   说道:
    强烈排斥国外程序
    支持(6反对(8回复
  1. 15
    不是俺   说道:
    gmail设置中怎么有这种东西:您有自己的域名吗? 在您的域中免费使用 Gmail.

    刚加上的?还是原来就有?俺原来怎么听说gmail的企业邮箱只有英文版才能用?
    支持(5反对(7回复
  1. 16
    davidchen   说道:
    这本书可以在电骡下载到,需要的联系我,免费,全英文的nnd
    支持(4反对(7回复
  1. 17
    真水无味   说道:
    月光,是否要转wp了?
    如果这样,带我一起吧
    Z-blog
    支持(5反对(8回复
  1. 18
    kaku   说道:
    目前这种多用户blog似乎从数量上不多,应该是不会变成论坛那样多的用户群吧,如果是人数多的话,假设论坛似乎更合适一些。我想既然是共同创作,那么应该不会存在太多的非活跃用户的。
    支持(4反对(7回复
  1. 19
    黔岭书生   说道:
    我是用手机访问,来这里的朋友有没有使用WAP啊?
    支持(8反对(12回复
  1. 20
    087   说道:
    恩,wp的模板我十分的喜欢啊。。

    正在学css呢。。。呵呵
    支持(4反对(8回复
  1. 21
    Gomain   说道:
    确实有很多无效用户,
    但这段代码似乎没有为注册时间做出筛选,也许刚注册就被删掉了。

    多表策略本身并无问题,只是被许多空间商限制而已。
    也许月光该考虑将wpmu向lyceum迁移,这是我所知道的解决多表的最快捷方法。

    能否mail我你mu的网址?
    支持(5反对(9回复
  1. 22
    o   说道:
    其实都差不多......
    支持(5反对(10回复
  1. 23
    飘易博客   说道:
    太专业了,呵呵。
    支持(6反对(13回复
  1. 24
    风到月来   说道:
    Z-blog
    .....
    支持(3反对(11回复
  1. 25
    菠菜   说道:
    月光总会给大家惊喜。
    支持(5反对(14回复

发表留言