跨越 12 个版本 Solo 升级过程记录 有更新!

前言

我的博客风林火山,环境是阿里云的Linux,版本是0.66,时隔一年过去,最新版本已经是1.80,遂决定升级。昨晚咨询向D咨询了升级的方法,得知不可以跳版本升级,遂崩溃(需要跨越12个版本升级),今天晚上饭后,硬着头皮上了。

过程

数据备份
  • 登录mysql:mysql -u root -p
  • 查看数据库:show databases;
  • 数据库备份:退出mysql执,并行mysqldump -uusername -ppassword b3log > /backupfile20170217.sql;
  • 将备份的数据拷贝到本机,将在本机完成升级后再部署到云上。
升级前准备

在进行升级前需要准备从0.67到1.80各版本的编译后war包,解压
,并把他们放在tomcat配置文件指定的部署路径下面。
将先前备份的数据文件,导入到本机的mysql(新建数据库的时候注意编码)下面。

升级及验证
  • 从0.67到1.80,逐个部署文件,每次部署完成后,启动前,修改latke.properties及local.properties。
  • 启动tomcat,输入localhost请求首页,此时系统会自动完成升级。
  • 等待30S,检查 preference或option表的version字段,看是否升级成功(版本号是否更新)。
    视情况进行下一步或排错。
升级后扫尾
  • 直到升级到最新版本,在本机将升级成功后的数据库导出,和程序包一起上传至阿里云,同时检查程序的配置文件latke.properties及local.properties。
  • 在阿里云上,登录到mysql,运行以下命令:
  • 删除库(因为经过升级数据库已有了很大变化):drop database b3log;
  • 新建库,注意编码:create database 'b3log' default character set utf8 collate utf8_bin;
  • 切换至b3log库:use b3log;
  • 导入:source /flcoder180.sql;
重启服务
  • 启动tomcat:service tomcat7 start;
  • 启动nginx:service nginx start;

后话

升级后解决了两大问题:

  1. 博客模版比以前好看一倍。
  2. markdown的兼容性问题没有了。

最后,鸣谢D大,跨了12个版本升级竟然顺利完成了,可见其各版本的衔接是下了大功夫的,solo项目本身管理得非常到位。

最后的最后,经D大提醒,需要修改一下表名,登录mysql并切换到b3log下,执行

  • alter table b3_solo_archivedate rename b3_solo_archiveDate;
    alter table b3_solo_archivedate_article rename b3_solo_archiveDate_article;

本文为风林火山博客原创,转载请注明出处:www.flcoder.com
validate