# 系统升级说明
升级需要执行以下基本步骤,请确保每个步骤正确。
说明:升级前请全量备份网站数据库和代码,避免升级操作有误造成系统不能正常运行。
# 系统自动升级
从 v1.5.0
开始,系统提供自动升级功能。当有新版本出现时,在后台可以通过自动升级操作一键升级。
在自动升级前请备份好旧的系统数据,避免升级失败造成的数据丢失等情况。
# 系统手动升级
# 1 旧的系统备份
假如旧系统的部署目录为 /xxx/test.com
,
请重新命名为 /xxx/test.com.bk
Linux参考命令
mv /xxx/test.com /xxx/test.com.bk
Windows参考操作
复制文件 X:\xxx\test.com 到 X:\xxx\test.com.bk
# 2 解压最新的代码
解压最新的代码到 /xxx/test.com
Linux参考命令
mkdir -p /xxx/test.com
cp xxx.zip /xxx/test.com
cd /xxx/test.com
unzip xxx.zip
2
3
4
Windows参考操作
创建文件夹 X:\xxx\test.com
解压安装包 xxx.zip 到 X:\xxx\test.com
2
# 3 迁移自安装模块
如果系统不是行业定制版,可能有些模块是自行安装的,这时需要将 module/
目录中的自安装模块复制到升级后的系统中。
Linux参考命令
cp -av /xxx/test.com.bk/module/xxx /xxx/test.com/module
Windows参考操作
复制自行安装的模块 X:\xxx\test.com.bk\module\xxx 到 X:\xxx\test.com\module
# 4 复制配置文件
从老的项目代码中复制以下配置文件到新的代码中。
- 配置文件:
.env
- 上传文件:
public/data
Linux参考命令
cp -av /xxx/test.com.bk/.env /xxx/test.com/
cp -av /xxx/test.com.bk/public/data /xxx/test.com/public/
2
Windows参考操作
复制配置文件 X:\xxx\test.com.bk\.env 到 X:\xxx\test.com
复制数据文件 X:\xxx\test.com.bk\public\data 到 X:\xxx\test.com\public
2
# 5 升级数据库
说明:系统的升级会伴随着数据库字段和系统配置的升级,系统的版本发布都会包含历史系统的所有操作,执行该步骤可以升级系统数据库字段、操作等
Linux参考命令
php /xxx/test.com/artisan migrate
php /xxx/test.com/artisan modstart:module-install-all
2
Windows参考操作
打开CMD命令窗口
运行命令 php.exe X:\xxx\test.com\artisan migrate
运行命令 php.exe X:\xxx\test.com\artisan modstart:module-install-all
2
3
# 6 清除缓存并完成升级
- 如果启用了
Redis
等外部缓存依赖,请清除缓存后再重新访问系统。 - 如果使用的是系统自带的文件缓存,直接访问新系统。
# Linux环境设置部署源为git仓库
开源用户请忽略此部分内容
# 切换到PHP的运行用户,通常为 www
su www
# 进入到系统目录中
cd /www/wwwroot/www.example.com
# 进入到上一级目录
cd ..
# 备份源系统为
mv www.example.com www.example.com.old
# clone最新的git仓库
git clone https://xxx.example.com/git/xxx.git www.example.com
# 进入到新系统目录
cd www.example.com
# 复制老的系统文件到新系统中
cp ../www.example.com.old/.env .
cp -a ../www.example.com.old/public/data/* public/data/
# 新增加安装锁定文件
touch storage/install.lock
# 执行系统迁移命令
php artisan migrate
# 执行模块迁移命令
php artisan modstart:module-install-all
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
对于部分商业用户,我们提供了专属的git仓库地址用于前期项目的同步开发和测试。
# Windows环境设置部署源为git仓库
开源用户请忽略此部分内容
对于部分商业用户,我们提供了专属的git仓库地址用于前期项目的同步开发和测试。
# 右击打开 git bash
# 切换到PHP的运行用户,通常为 www
su www
# 进入到系统目录中
cd /x/wwwroot/www.example.com
# 进入到上一级目录
cd ..
# 备份源系统为
mv www.example.com www.example.com.old
# clone最新的git仓库
git clone https://xxx.example.com/git/xxx.git www.example.com
# 进入到新系统目录
cd www.example.com
# 复制老的系统文件到新系统中
cp ../www.example.com.old/.env .
cp -a ../www.example.com.old/public/data/* public/data/
# 新增加安装锁定文件
touch storage/install.lock
# 执行系统迁移命令
php artisan migrate
# 执行模块迁移命令
php artisan modstart:module-install-all
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
# Linux环境同步git仓库代码
# 切换到PHP的运行用户,通常为 www
su www
# 进入到系统目录中
cd /www/wwwroot/www.example.com
# 拉取最新代码
git pull origin master
# 执行系统迁移命令
php artisan migrate
# 执行模块迁移命令
php artisan modstart:module-install-all
2
3
4
5
6
7
8
9
10
# Windows环境同步git仓库代码
安装 git 管理工具
第一步、在网站目录打开 git bash
第二步、拉取最新代码,输入命令 git pull origin master
第三步、执行数据库迁移工作,依次运行以下命令
php.exe artisan migrate
php.exe artisan modstart:module-install-all
2
第四步、清除缓存,依次运行以下命令
php.exe artisan cache:clear
php.exe artisan view:clear
2
# 常见问题
# 系统升级未完全如何手动补救
部分系统升级时调用升级命令失败,可通过手动执行以下命令继续完成
Linux参考命令
## 进入网站根目录
cd /wwwroot/example.com
## 执行系统迁移命令
php artisan migrate
## 执行模块迁移命令
php artisan modstart:module-install-all
2
3
4
5
6
Windows参考操作
打开CMD命令窗口
运行命令 cd X:\wwwroot\example.com
运行命令 php.exe X:\wwwroot\example.com\artisan migrate
运行命令 php.exe X:\wwwroot\example.com\artisan modstart:module-install-all
2
3
4
执行命令效果截图
执行 php artisan migrate
成功会出现如下界面,该命令可重复执行。
执行 php artisan modstart:module-install-all
成功会出现如下界面,该命令可重复执行。