Skip to content

Metadb POSTGRESQL 升级

背景说明:随着 HENGSHI SENSE 服务版本的不断升级,HENGSHI SENSE 内部 Metadb(postgresql)组件版本也在不断升级,可以选择继续维持当前版本、也可以选择升级到内置最新版本。

本文介绍如何升级 Metadb 数据操作,以及升级过程中出现问题如果回滚数据库版本操作。

单机/集群 部署

升级前验证

shell
cd /opt/hengshi
bin/hengshi-sense-bin start metadb ##启动 metadb 操作

出现此提示,表示您的 metadb 版本低于当前 HENGSHI SENSE 默认内置版本,请进行下面的升级操作

版本升级

shell
cd /opt/hengshi
bin/hengshi-sense-bin stop metadb ## 保证 metadb 升级操作前,服务处于停止状态。
bin/hengshi-sense-bin upgrade metadb ## 升级操作

出现上面提示显示您的 metadb 数据库已经升级完成

版本回滚

  1. 升级过程中出现异常信息,请执行下述操作完成版本回滚操作
shell
cd /opt/hengshi
rm -rf pg_data
mv pg_data_bak pg_data
cd /opt/hengshi/lib
rm -rf pgsql
ln -s postgresql-9.6.2 pgsql

容器 部署

升级前验证

请联系售后人员,确认当前 metadb 版本信息,升级 metadb 版本信息。

版本升级

  1. 升级 Metadb 服务版本,需要使用升级镜像 hengshi-sense:metadb-upgrade 进行升级操作
  2. 修改.env 文件,HS_IMAGE_TAG=$TAG 将$TAG 配置成 metadb-upgrade 升级镜像 tag
  3. 修改 docker-compose.yaml 文件,在 metadb 服务下 增加如下配置 ,注意 9.6.2信息是当前 metadb 版本编号
text
environment:
      OLDER_METADB_VERSION: 9.6.2
  1. 执行升级操作
shell
cd single
docker-compose run --rm metadb upgrade metadb

5. 出现上面提示表示您的 metadb 数据库升级完成

版本回滚

  1. 升级过程中出现异常信息,请执行下述操作完成版本回滚操作
  2. 确认 env 配置文件信息,HSHOME 地址信息
shell
cd $HSHOME #进去到 HSHOME 配置的目录下
cd hsdata
rm -rf pg_data
mv pg_data_bak pg_data
  1. 回滚完成后恢复 .env 文件中镜像 tag 到旧版本

k8s 部署

升级前验证

请联系售后人员,确认当前 metadb 版本信息,升级 metadb 版本信息。

版本升级

  1. 升级 Metadb 服务版本,需要使用升级镜像 hengshi-sense:metadb-upgrade 进行升级操作
  2. 修改 metadb.yaml 中 image: registry.hengshi.org/hengshi-sense:rc 镜像版本为 hengshi-sense:metadb-upgrade
  3. 修改 configmap.yaml 配置参数 增加如下配置,注意 9.6.2信息是当前 metadb 版本编号
text
OLDER_METADB_VERSION: 9.6.2
  1. 执行下列升级操作
shell
kubectl -n hengshi apply metadb.yaml
kubectl -n hengshi exec -it metadb-0 -- /docker-entrypoint.sh upgrade metadb single

5. 出现上面提示表示您的 metadb 数据库升级完成

版本回滚

  1. 升级过程中出现异常信息,请执行下述操作完成版本回滚操作
shell
kubectl -n hengshi exec -it metadb-0 -- /bin/bash
cd /opt/hengshi
rm -rf pg_data
mv pg_data_bak pg_data
  1. 回滚完成后恢复 metadb.yaml 文件中镜像 tag 到旧版本

windows 部署

升级前验证

确定当前版本,查看安装目录下\pg_data\PG_VERSION文件内容,确定当前 metadb 版本。

请注意

确认当前 安装目录\lib\ 目录下存在升级前 metadb 版本程序 如 PG_VERSION 文件内容为9.6,lib\ 目录下应存在 postgresql-9.6.2-windows-64程序目录

版本升级

  1. 开始升级,输入待升级版本程序名称

  2. 点击开始升级按钮

  3. 出现升级完成提示,此次升级工作完成

  • 提示:升级后出现 pg_data_bak 目录,此目录为旧版本数据库文件,确认升级后数据库无误后此文件可根据情况清理。

版本回滚

  1. 升级过程中出现异常信息,请执行下述操作完成版本回滚操作。
  2. 删除 pg_data 目录,重命名 pg_data_bak 目录为 pg_data 目录。
  3. 编辑安装目录\bat\common.bat文件,将 pgsql 变量修改为pgsql=postgresql-9.6.2-windows-64img.png

衡石分析平台使用手册