在刚接触typecho之后不久,发现@雷鬼 魔改的高性能的typecho,命名为HPTypecho,便使用提供的工具,把原版的typecho转到hptypecho,而且一直使用到最近,算来也有两三年时间了。前两天买了handsome主题,发现无法在hptypecho使用,而且hptypecho对很多插件的兼容性也不好,另外我的博客这几天文章,也实在用不着高性能版,便琢磨着怎么能转回到普通版本上。
本着内事问百度,外事问谷歌的原则,我分别在百度和谷歌上查了下,关于这方面的有效信息太少,而且能找到的都是关于怎样从原版转为HPTypecho,没有一篇文章介绍怎么转回去,而且hptypecho项目提供的使用说明中也没有提到怎样转回,那就只能自己想办法来解决了。
观察了普通版与高性能版之间的表的结构非常相似,除了 typecho_contents 相关的之外,其他的大部分的表都一样,高性能版的把原来的 typecho_contents 表拆分成三张表,之后使用一个名为 typecho_contents 的视图来输出原版的该表的内容,如此就好办多了,下面是操作步骤:
1.新建一个数据库,用来保存转出的数据
2.选择下面这些表以及你安装的其他的插件生成的表

typecho_comments
typecho_fields
typecho_metas
typecho_options
typecho_relationships
typecho_users

以phpmyadmin为例,选择这些表,之后选中项:“复制表格”,会弹出具体的选项,数据库选择你新建的用于转换的数据库,选项选择“结构和数据”,之后就可以把数据复制到新数据库中;

选择数据表.png

选项.png

3.只剩下 typecho_contents 表,因为视图与表 typecho_contents 的字段有出入,不能直接使用这个方法来复制数据,只能用SQL语句来复制,如下:

Create table `新的数据库`.`typecho_contents` SELECT `cid`,`title`,`slug`,`created`,`modified`,`text`,`order`,`authorId`,`template`,`type`,`status`,`password`,`commentsNum`,`allowComment`,`allowPing`,`allowFeed`,`parent`,1 AS `views`,1 AS 'agree' FROM `原数据库`.`typecho_contents`;

4.把原库做备份,新库转过去,之后看能不能正常访问,如果访问正常的话就表示成功了,可以把你的程序用原版的程序进行覆盖了。

以上。

Last modification:April 2nd, 2020 at 09:23 am
如果觉得我的文章对你有用,请随意赞赏