# 老版本升级

可以通过 SSCMS Cli 命令行将老版本系统升级至最新版本。

升级命令当前支持的版本包括:

  • SSCMS 3.6 版本(3.6、3.6.1、3.6.2、3.6.3、3.6.4)升级至最新版本
  • SSCMS 4.0 版本升级至最新版本
  • SSCMS 4.1 版本升级至最新版本
  • SSCMS 5.0 版本升级至最新版本
  • SSCMS 6.x 版本升级至最新版本

所有版本的升级方式基本一致,下面我们以SSCMS 6.15 版本为例说明升级命令的使用方式。

注意

SSCMS 7.3 及之后的版本升级请参考:升级 SSCMS

# 第一步:下载 SSCMS 最新版本

首选,我们需要将 SSCMS 最新版本下载并解压至指定文件夹:

# 第二步:运行数据库备份命令

接下来,我们进入老版本文件夹:

打开Web.config,可以看到当前系统使用的数据库信息:

<add key="DatabaseType" value="SqlServer" />
<add key="ConnectionString" value="Server=(local);Uid=sa;Pwd=123456;Database=cms6;" />

接下来,我们需要将数据库信息保存至json文件中,在命令行中进入新版本文件夹,创建文件 old.json,将数据库信息添加至文件中:

{
  "Database": {
    "Type": "SqlServer",
    "ConnectionString": "Server=(local);Uid=sa;Pwd=123456;Database=cms6;"
  }
}

接下来,我们运行数据备份命令,将老版本数据库信息作为参数输入,将老版本数据库数据备份至backup文件夹:

sscms data backup -d backup -c old.json

其中 -d 用于指定数据库备份到的文件夹名称,-c 用于指定需要备份的数据库信息配置文件。

# 第三步:运行系统升级命令

接下来我们需要使用系统升级命令 sscms data update 将老版本数据结构以及数据转换为新版本的数据结构及数据。

升级命令将把备份文件中存储的数据结构改为最新版本的数据结构,升级完成后将生成新的文件夹 update,用于恢复命令使用。

将命令行切换到系统根目录,运行升级命令并指定backup文件夹:

sscms data update -d backup

注意,系统升级命令仅实现将备份数据文件转换为新的数据文件,命令不会对数据库进行操作。

系统升级命令执行完毕后,系统根目录将出现一个名为 update 的文件夹,此文件夹中存储了升级之后的数据文件。

# 第四步:恢复数据

通过备份以及升级命令,我们已将新版本系统所需要的数据准备好了,接下来我们需要为新版本准备运行环境。

我们进入新版本文件夹,在新版本根目录创建 sscms.json 文件,将数据库信息存放进去:

{
  "Database": {
    "Type": "SqlServer",
    "ConnectionString": "Server=(local);Uid=sa;Pwd=123456;Database=cms7;"
  }
}

我们需要使用数据库恢复命令 sscms data restore 将老版本的数据恢复至新版本中。

将命令行切换到新版本系统的根目录,运行恢复命令(注意,恢复命令需要指定-d 参数,从 update 文件夹中恢复):

sscms data restore -d update

可以看到命令将逐个核对数据并将数据插入至新版本数据库中。

# 第五步:数据库升级

完成数据恢复后,我们需要在浏览器中进入 http://<域名>/ss-admin/syncDatabase/ 数据库升级界面,点击升级按钮,完成数据库升级。

最后,将老版本系统文件夹中的站点文件复制到新版本系统文件夹中,切换域名,完成版本升级。

上次更新: 2024/2/19 上午8:48:04