dreamhost转移到虎翼第三步——多个wordpress共用一个数据库

2008-09-25 23:17| 分类:web开发 wordpress| 标签: | 1,364 次点击

上次成功的导入了自己的主博客,现在还有一个专门用来发布唠叨的微博客:piece.chenfangyi.com,本来决定好用二级域名的,后来还是禁不住PR的诱惑,决定改用www.chenfangyi.com/twitter来显示这个微博客,而且原来的那个twitter主题太难看了,得换上上次看到的一个中意的。趁这次搬空间,就一并给解决了吧。

因为虎翼的空间无法新建数据库,所以得用表前缀来实现一个数据库里共存多个wp的表。

为了方便着想,我首先想到了用插件,也找到了《WordPress安全之数据库篇(二)—-更改表前缀》介绍的“WP Prefix Table Changer”,这个插件可以更改表前缀。于是拿一个博客试试,安装,然后“Starting Renaming”。如图:

image

但是提示““Your User which is used to access your WordPress Tables/Database, hasn’t enough rights( is missing ALTER-right) to alter your Tablestructure.”。后来到作者的博客上看了看,发现很多人出现这个问题,作者说正在找原因但是没看到有解决的方法。不过倒是发现了一条非常有用的评论:

actually, i had the same problem as them above, aand change the default prefix (wp_) manually (one by one) is not a good job, why? ..because i’ve a bunch plugins which has been installed on my own blog, and of course it using wp_ prefix too, one of these are firestat.

but, i am successfully changing the default prefix (wp_) using my own method, see below:

1. backup your wordpress database (i’m using phpmyadmin) to an *.sql file.

2. open that *.sql file (make another copy first) using text editor, then find and replace all “wp_” prefix to “something_”.

3. now, drop all tables of your wordpress databases (don’t drop the database :D )

4. import the *.sql file which has been edited before into your wordpress databases.

5. and lastly, edit your

wp-config.php file and change the $table_prefix = ‘wp_’; to $table_prefix = ’something_’;

6. in my case, all plugins will be deactivaed automatically, so login to your blog admin panel, then activated your all plugin.

7. done ! ;)

it work perfectly for me.. !

这种方法比那种在phpmyadmin上改表前缀的方法要快得多,一步就全部修改完毕(这样看mysql比SQL server和access方便多了啊),不需要再像《如何修改Wordpress表前缀》多步修改wp_这个前缀了。而且已安装的插件也不会出问题了。而且正好我也是要转换数据库的,这样就少了一步——删除原数据库的操作了。接下来开始行动:

1、备份为.sql文件(我发现我的这个wp数据库居然本来就有表前缀,原来是DH自动安装给的,不管它,改了)

2、下载后用UE打开并替换:

image

3、最后导入虎翼的数据库:

image

image

导入成功!(这时我才看到了水煮鱼也介绍了款WP-Hive,据说这款也可以更改table_prefix,但我还是不试了。)

4、在wp-config.php中修改$table_prefix  = “你修改的值”

5、修改首页地址:现在访问www.chenfangyi.com/twitter,可是却跳转到了piece.chenfangyi.com,原来之前我在WP后台里设置了博客地址是这个,所以WP就会跳转过去。现在有两个办法:
(1)、修改host为原来的ip:64.111.98.219   piece.chenfangyi.com  然后打开IE(之前用TW,新开IE才可以更新hosts记录)即可访问到网站,登录后台,修改以下设置:

image

(2)(更快捷)、直接用phpmyadmin修改数据库中的wp-options表的第一个siteurl的值,这样最方便了(我就是这样)。

但是,导入后进入WP后台却发现乱码。这个wp的数据库是我用DH一键安装wp时安装的,数据库编码是utf8_general_ci,在网上找了很多方法,但备份下载下来的都是乱码(不管有没有选择压缩),后来发现其实这个数据库本来在DH的phpmyadmin上就是乱码的,只是在WP中没有乱码,所以不管我怎么备份就都是乱码的。

无奈之下,只能试试用插件的方法:我用的是wordpress db backup version 2.2.1,上传到插件目录后再进入后台下载备份的文件,然后再导入(这时我已经没有去修改phpmyadmin看看,居然都不是乱码了!估计wp也不会乱码。登录新的wp后台,果然,没有乱码。

看来只能用这个插件备份数据库了,至于表前缀,因为我本来的表前缀就是自定义的,并非默认的wp_,所以导入虎翼的数据库并不会冲突。暂时就不验证以上那个方法是否能成功修改表前缀了。

安装完后首页一片空白,搜索后才知道,原来我更新时是用新的程序,主题都还没转移过来呢­ :sad: 把主题再转移过来,一切正常!

相关文章

  1. 3条评论

  2. 半醒 2008-10-27 9:56


    详细的介绍

    [回复]

  3. tsenfine 2008-11-06 20:57

    刚才在twitter那里发了篇文章,却没有trackback到chenfangyi.com上,于是看了看www.chenfangyi.com/twitter,原来又出现首页空白,搜了一下自己的博客,原来还是主题的原因,上次我把twitter那个博客的自带的主题都删了(所以wordpress也没法使用默认的主题,所以就一片空白了),只会显示一个正在用的主题,而下面的主题列表中找不到这个主题。所以只有重新上传一个上去(随便什么主题,甚至一摸一样的主题也可以),才可以找到这个主题。所以后台必须留有至少两个主题。

    [回复]

  1. 1 Trackback(s)

  2. 2008-10-19: 手动修改wordpress前缀 | fangyi's blog

发表您的评论

您的昵称:
您的邮箱:(可选,不会被公布)
您的网站: