Skip to main content
Version: v23.10

版本升级

当前 v23.10 仅支持从 v22.10 升级,如需要从其他版本升级,请先升级到 v22.07 再升级到 v22.10

确认服务器满足升级要求

请浏览 部署前置准备

关闭原服务

在执行升级前,请先关闭原服务,避免造成数据备份时导致数据不一致

在所有节点中执行以下命令

cd /data/tencent-survey-v22.10-amd64

# 关闭应用服务
docker-compose -f docker-compose.yaml down

# 关闭存储服务(如有)
docker-compose -f docker-compose-paas.yaml down

备份

在执行升级前,请对数据库、附件与日志等文件进行备份

备份数据库

mysqldump -h数据库地址 -u用户名 -p -all-databases > tencentsurvey-mysql-backup.sql

备份文件

在所有节点上执行以下命令

cp -r /data/tencent-survey-v22.10-amd64/var /data/tencentsurvey-var-backup

验证备份文件

在正式执行升级前,请验证备份文件是否完整,是否可用于恢复

执行升级

分发安装包

确保所有节点安装目录均有 /data/tencent-survey-v23.10-amd64

以下所有操作,如无说明,操作目录均为以上指定的安装目录

编辑系统配置

根据 使用 Docker-Compose 安装 中安装,数据库配置等内容需要从原 .env 文件中复制保证一致

MYSQL_SERVER
MYSQL_PORT
MYSQL_USERNAME
MYSQL_ROOT_PASSWORD

REDIS_SERVER
REDIS_PORT
REDIS_PASSWORD

ES_SERVER
ES_PASSWORD

APP_KEY
SECRET_TOKEN_BASE

LICENSE
LICENSE_KEY

MAIN_ADAPTER
MAIN_HOST
MAIN_DATABASE
MAIN_USERNAME
MAIN_PASSWORD

SHARD_USERNAME
SHARD_PASSWORD

ES68_HOST
ES68_USERNAME
ES68_PASSWORD

LOG_ES_HOST
NGINX_ES_HOST

REDIS_HOST
REDIS_PORT
REDIS_PASSWORD
REDIS_DB_INDEX

QUEUE_REDIS_HOST
QUEUE_REDIS_PORT
QUEUE_REDIS_PASSWORD
QUEUE_REDIS_DB_INDEX

QUEUE_REDIS5_HOST
QUEUE_REDIS5_PORT
QUEUE_REDIS5_PASSWORD
QUEUE_REDIS5_DB_INDEX

COOP_REDIS_HOST
COOP_REDIS_PORT
COOP_REDIS_PASSWORD
COOP_REDIS_DB_INDEX

等其它更多个性化配置

编辑 Nginx 配置

修改根目录的 etc/nginx/servers/gateway.conf 文件,以下内容从原配置中拷贝

listen
server_name
ssl_dhparam
ssl_certificate
ssl_certificate_key
ssl_protocols
ssl_ciphers
ssl_prefer_server_ciphers

如果指定了 SSL 证书,需要将证书拷贝到 etc/nginx/servers 目录下

如果原服务中使用了自定义的 Nginx 配置,需要将自定义部分拷贝到新配置中

拷贝附件与日志文件到新版本安装目录

假设 /data/tencent-survey-v22.10-amd64 为原安装目录,/data/tencent-survey-v23.10-amd64 为新安装目录

rsync -av /data/tencent-survey-v22.10-amd64/var ~/data/tencent-survey-v23.10-amd64/
rsync -av /data/tencent-survey-v22.10-amd64/var/shared/backend-go/ /data/tencent-survey-v23.10-amd64/var/shared/server-file/
rsync -av /data/tencent-survey-v22.10-amd64/var/shared/backend-php-7/ /data/tencent-survey-v23.10-amd64/var/shared/server-file/

启动服务

在所有节点安装目录中执行以下命令

导入 Docker 镜像

docker load < docker-images.tar

启动服务

# 开启应用服务
docker compose -f docker-compose-paas.yaml up

# 开启存储服务(如有)
docker-compose -f docker-compose-paas.yaml down

数据升级

模版:

docker exec -it server sh -c \
'/data/tencentsurvey/tencentsurvey -c /data/tencentsurvey/.env tool upgrade -t=templates -v=2309'

皮肤:(如需要)

docker exec -it server sh -c \
'/data/tencentsurvey/tencentsurvey -c /data/tencentsurvey/.env tool upgrade -t=skins -v=2309'

数据合表(如需要)

docker exec -it server sh -c \
'/data/tencentsurvey/tencentsurvey -c /data/tencentsurvey/.env tool merge_answer_shard -a=exec'