BoBlog转EMLOG 4工具

注意:本文最后更新于 2530 天前,有关的内容可能已经发生变化,请参考使用。

BoBlog是我使用的第一个Blog程序,从07年至今也算用了不少日子,作为一个有点“程序洁癖”的人在博客系统上总是对WP敬而远之的,之前看重的是BoBlog的相对简洁而不失强大的功能,但是现在BoBlog长期不更新而且Emlog已经基本上完全可以满足我的基本要求遂决定转向Emlog。

由于Emlog官方针对BoBlog的搬家工具还没有非常完善,而且用工具箱的RSS来搬迁原来Boblog数据的话应该会丢失很多的特性。在Emlog论坛找了一圈发现奇遇TX写的一个BoBlog2.1 转Emlog3的工具,稍微折腾了一下想出一个比较靠谱的转换到EMLOG4的方法,附件里是经过修改的数据搬迁工具在奇遇TX的基础上进行了一些修改并修复了一些错误。转换过程很简单,先下载并安装emlog_4.0.1,再将原BoBlog中的attachment和data文件夹以及附件中的转换工具上传到新装emlog根目录,执行转换工具按照提示运行即可。

最终可以将BoBlog中的所有数据比较完美地导入emlog_4.0.1,包括原来BoBlog中的附件和自定义URL等等。对于emlog不支持UBB的问题其实应该很好解决:将UBB解析之后再导入数据库即可。由于我的777篇日志绝大部分不含UBB代码所以就没有继续折腾了,希望准备从BoBlog转向EMLOG的能够有用……

boblog.zip


「倘若有所帮助,不妨酌情赞赏!」

Holmesian

感谢您的支持!

使用微信扫描二维码完成支付


相关文章

发表新评论
已有 21 条评论
  1. 小楼

    SQL语句执行错误:ALTER DATABASE emlog DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci; DROP TABLE IF EXISTS emlog_blog; CREATE TABLE emlog_blog ( gid mediumint(8) unsigned NOT NULL auto_increment, title varchar(255) NOT NULL default '', date bigint(20) NOT NULL, content longtext NOT NULL, excerpt longtext NOT NULL, alias varchar(255), author int(10) NOT NULL default '1', sortid tinyint(3) NOT NULL default '-1', type varchar(20) NOT NULL default 'blog', views mediumint(8) unsigned NOT NULL default '0', comnum mediumint(8) unsigned NOT NULL default '0', tbcount mediumint(8) unsigned NOT NULL default '0', attnum mediumint(8) unsigned NOT NULL default '0', top enum('n','y') NOT NULL default 'n', hide enum('n','y') NOT NULL default 'n', allow_remark enum('n','y') NOT NULL default 'y', allow_tb enum('n','y') NOT NULL default 'y', password varchar(255) NOT NULL default '', PRIMARY KEY (gid) )ENGINE=MYISAM DEFAULT CHARSET=utf8; DROP TABLE IF EXISTS emlog_attachment; CREATE TABLE emlog_attachment ( aid smallint(5) unsigned NOT NULL auto_increment, blogid mediumint(8) unsigned NOT NULL default '0', filename varchar(255) NOT NULL default '', filesize int(10) NOT NULL default '0', filepath varchar(255) NOT NULL default '', addtime bigint(20) NOT NULL, PRIMARY KEY (aid), KEY blogid (blogid) )ENGINE=MYISAM DEFAULT CHARSET=utf8; DROP TABLE IF EXISTS emlog_comment; CREATE TABLE emlog_comment ( cid mediumint(8) unsigned NOT NULL auto_increment, gid mediumint(8) unsigned NOT NULL default '0', pid mediumint(8) unsigned NOT NULL default '0', date bigint(20) NOT NULL, poster varchar(20) NOT NULL default '', comment text NOT NULL, mail varchar(60) NOT NULL default '', url varchar(75) NOT NULL default '', ip varchar(128) NOT NULL default '', hide enum('n','y') NOT NULL default 'n', PRIMARY KEY (cid), KEY gid (gid) )ENGINE=MYISAM DEFAULT CHARSET=utf8; DROP TABLE IF EXISTS emlog_link; CREATE TABLE emlog_link ( id smallint(4) unsigned NOT NULL auto_increment, sitename varchar(30) NOT NULL default '', siteurl varchar(75) NOT NULL default '', description varchar(255) NOT NULL default '', taxis smallint(4) unsigned NOT NULL default '0', PRIMARY KEY (id) )ENGINE=MYISAM DEFAULT CHARSET=utf8; DROP TABLE IF EXISTS emlog_tag; CREATE TABLE emlog_tag ( tid mediumint(8) unsigned NOT NULL auto_increment, tagname varchar(60) NOT NULL default '', gid text NOT NULL, PRIMARY KEY (tid), KEY tagname (tagname) )ENGINE=MYISAM DEFAULT CHARSET=utf8; DROP TABLE IF EXISTS emlog_sort; CREATE TABLE emlog_sort ( sid tinyint(3) unsigned NOT NULL auto_increment, sortname varchar(255) NOT NULL default '', alias varchar(200) NOT NULL default '', taxis tinyint(3) NOT NULL default '0', PRIMARY KEY (sid) )ENGINE=MYISAM DEFAULT CHARSET=utf8; DROP TABLE IF EXISTS emlog_trackback; CREATE TABLE emlog_trackback ( tbid mediumint(8) unsigned NOT NULL auto_increment, gid mediumint(8) unsigned NOT NULL default '0', title varchar(255) NOT NULL default '', date bigint(20) NOT NULL, excerpt text NOT NULL, url varchar(255) NOT NULL default '', blog_name varchar(255) NOT NULL default '', ip varchar(16) NOT NULL default '', PRIMARY KEY (tbid), KEY gid (gid) )ENGINE=MYISAM DEFAULT CHARSET=utf8;
    You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'DROP TABLE IF EXISTS emlog_blog; CREATE TABLE emlog_blog ( gid mediumint(8) un' at line 2

    小楼 回复
  2. 小爱

    你的转换工具转换出来的数据很成功,但是所有文字都乱码了,我在数据库里改编码也不成,望指教!

    小爱 回复
    1. Holmesian

      @小爱

      @小爱:编码问题 根据你的编码修改一下程序里编码部分 试着用用latin1

      Holmesian 回复
  3. 期货龙

    可能的话,麻烦邮件或者qq联系我一下,现在就指望老兄了,希望你能及时看到吧。。。

    7659370@qq.com

    期货龙 回复
    1. Holmesian

      @期货龙

      @期货龙:已经联系你了

      Holmesian 回复
      1. 期货龙

        @Holmesian

        @Holmesian:还丢了附件。。。

        要是字符集的问题能简单解决,我真想重新再导一遍。

        麻烦再联系我一次,我没收到任何信息。

        期货龙 回复
        1. Holmesian

          @期货龙

          @期货龙:把原来的数据库备份一下 用RSS导入会丢失很多内容的

          Holmesian 回复
        2. Holmesian

          @期货龙

          @期货龙:我发到了你的邮箱

          Holmesian 回复
      2. 期货龙

        @Holmesian

        @Holmesian:谢谢,不过没有看到你的联系信息,邮件或者QQ都没有。

        另外,我最终还是用emlog工具箱中的rss导入解决的,丢失了评论信息,很遗憾。

        期货龙 回复
  4. 期货龙

    转出来都是乱码,只有文本中的数字是正确的,这是怎么回事啊,源数据都是UTF-8的

    期货龙 回复
    1. Holmesian

      @期货龙

      @期货龙:新装Emlog的时候用的是不是UTF-8?

      Holmesian 回复
      1. 期货龙

        @Holmesian

        @Holmesian:安装时没有字符集的选项啊

        期货龙 回复
        1. 期货龙

          @期货龙

          @期货龙:转换时也没有这方面的选择

          期货龙 回复
  5. LIGHT

    有洁癖应该直接上 Picky 嘛,based on GAE&Python

    LIGHT 回复
    1. Holmesian

      @LIGHT

      @LIGHT:周围的环境GAE访问已经很吃力了……

      Holmesian 回复
  6. 先成标志设计

    好久没来了,博主好久没回访小站了。

    先成标志设计 回复
  7. changing

    怎么这么多人改成用 emlog 这是支持国产吗 注册用户的信息貌似丢了 不能登陆了

    changing 回复
    1. Holmesian

      @changing

      @changing:这个不需要登录的 用户信息导入的话就可以进后台了 emlog几乎没有权限模型的概念

      喜欢emlog的简洁

      Holmesian 回复
  8. boblog

    成功了~

    boblog 回复
  9. 痕迹

    去年我有个博客是用boblog做的,想转找不到办法,后来就删除了。

    痕迹 回复
    1. Holmesian

      @痕迹

      @痕迹:那有些可惜 其实只要数据库留和附件留下来就好了

      Holmesian 回复