1.Base基础/3.Icon图标/操作/search备份
1.Base基础/3.Icon图标/操作/search备份
EN
文档
关于AntDB
快速入门
使用教程
运维
调优
工具和插件
高级服务
数据安全
参考
  • 文档首页 /
  • 部署与升级 /
  • 集中式安装部署 /
  • 数据库版本升级

数据库版本升级

更新时间:2024-07-01 14:39:42

独立模式环境升级

步骤一:上传 tar 包

将 tar 包上传到 AntDB 数据库所在的主机上。

上传后,解压缩:

tar -zxvf antdb-t-ee-release-7.2.generic.*

步骤二:停止数据库

adb_ctl stop -D /home/antdb/data

步骤三:备份数据和二进制目录

  • 备份旧版本二进制文件;
cp -r /home/antdb/app  /home/antdb/app.bak
  • 备份数据目录(可选);
cp -r /home/antdb/data /home/antdb/data.bak

步骤四:运行升级脚本

升级脚本使用安装部署包里的 antdb_upgrade.sh。该脚本有以下可执行选项。

[antdb@host227 antdb-t-ee-release-7.2.generic.*]$ sh antdb_upgrade.sh --help
`antdb_upgrade.sh` Update AntDB with the new package.
Usage: sh antdb_upgrade.sh [OPTION]

Options:
  -b, --backup         Update antdb and backup before files.

  -c, --config         Database upgrade configuration file.

  -h, --help           Display this usage info and exit.

  -V, --version        Display this tool version info and exit.
  
说明:
其中指定-b会在升级前,备份二进制文件,如果步骤三已经手动备份过了,可以不用指定-b选项
-c 选项是必选选项,指定升级的配置文件

升级前,需要配置升级文件(setup/common/upgrade_conf.ini)。

注意: 该配置文件最后的换行符不可全删掉(配置文件最后要有换行符)。

## upgrade_info 配置项说明:
##
## upgrade_type 分类:
##     primary 表示只更新主节点,即当前机器节点
##     all     表示更新所有节点
[upgrade_info]
upgrade_type = primary                                    #集中式单节点升级,只能填primary             


## host_info 配置说明:
##
## primary_node 格式:user,ssh_ip,ssh_port,antdb_app_path,antdb_data_path,antdb_ip,antdb_port
##     user:数据库超级用户名,同时也应该是操作系统用户名         #集中式和分布式,这个都需要填写
##     ssh_ip:数据库所在主机 SSH 服务地址                    #针对集中式填写主机所在IP
##     ssh_port:数据库所在主机 SSH 服务端口                  #集中式和分布式,这个都需要填写
##     antdb_app_path:数据库程序目录                        #针对集中式,填写数据库程序目录 
##     antdb_data_path:数据库数据目录                       #针对分布式的配置,填写分布式mgr节点的data目录
##     antdb_ip:数据库监听的地址                            #针对分布式的配置,填写分布式mgr节点的IP
##     antdb_port:数据库监听的端口                          #针对分布式的配置,填写分布式mgr节点的端口
##
## standby_node 格式:user,ssh_ip,ssh_port,antdb_app_path
##     各字段与 primary_node 含义相同。
##
## 注意:
## 1、standby_node 仅用于更新集中式高可用,其它情形下不需要此信息。
## 2、如果仅更新主节点,primary_node 中填写前4个字段即可。
## 3、如果更新分布式的所有节点,primary_node 中必须填写所有字段。

[host_info]
primary_node = antdb,10.1.206.227,22,/home/antdb/antdb_cluster
standby_node = antdb,10.1.206.228,22,/home/antdb/antdb_cluster
standby_node = antdb,10.1.206.229,22,/home/antdb/antdb_cluster

执行升级脚本:

sh antdb_upgrade.sh -c setup/common/upgrade_conf.ini

注:也可以指定 -b 参数,备份二进制文件,这里手动备份过,可以不指定此参数。

sh antdb_upgrade.sh -b -c setup/common/upgrade_conf.ini

-b参数会将升级前AntDB二进制文件进行备份,并以时间日期结尾,例如:~/app/antdb-20230331-6264

步骤五:启动数据库

adb_ctl start -D /home/antdb/data

升级完成后,登录到数据库上,检查版本号是否正确:

select adb_version();

高可用集群环境升级

步骤一:上传 tar 包

  • 将 tar 包(以 AntDB7.2 版本为例)上传到 AntDB 数据库所在的主机上。

上传后,解压缩:

tar -zxvf antdb-t-ee-release-7.2.generic.*
  • 找到安装包中的升级配置文件模版,修改升级配置:
cd antdb-t-ee-release-7.2.generic.*/setup/common
vim upgrade_conf.ini

其中,upgrade_type = all,表示升级所有节点。

例如:

## upgrade_info 配置项说明:
##
## upgrade_type 分类:
##     primary 表示只更新主节点,即当前机器节点
##     all     表示更新所有节点
[upgrade_info]
upgrade_type = all       #集中式高可用可以选填primary或者all,all表示更新所有节点,primary表示只更新主节点,即当前机器节点             


## host_info 配置说明:
##
## primary_node 格式:user,ssh_ip,ssh_port,antdb_app_path,antdb_data_path,antdb_ip,antdb_port
##     user:数据库超级用户名,同时也应该是操作系统用户名         #集中式和分布式,这个都需要填写
##     ssh_ip:数据库所在主机 SSH 服务地址                    #针对集中式填写主机所在IP
##     ssh_port:数据库所在主机 SSH 服务端口                  #集中式和分布式,这个都需要填写
##     antdb_app_path:数据库程序目录                        #针对集中式,填写数据库程序目录 
##     antdb_data_path:数据库数据目录                       #针对分布式的配置,填写分布式mgr节点的data目录
##     antdb_ip:数据库监听的地址                            #针对分布式的配置,填写分布式mgr节点的IP
##     antdb_port:数据库监听的端口                          #针对分布式的配置,填写分布式mgr节点的端口
##
## standby_node 格式:user,ssh_ip,ssh_port,antdb_app_path
##     各字段与 primary_node 含义相同。
##
## 注意:
## 1、standby_node 仅用于更新集中式高可用,其它情形下不需要此信息。
## 2、如果仅更新主节点,primary_node 中填写前4个字段即可。
## 3、如果更新分布式的所有节点,primary_node 中必须填写所有字段。

[host_info]
primary_node = antdb,10.1.206.227,22,/home/antdb/antdb_cluster
standby_node = antdb,10.1.206.228,22,/home/antdb/antdb_cluster
standby_node = antdb,10.1.206.229,22,/home/antdb/antdb_cluster

步骤二:停止数据库

停止所有节点的 adbdcs 和 adbhamgr 服务,先停备节点,再停主节点:

sudo systemctl stop adbdcs
sudo systemctl stop adbhamgr

步骤三:备份数据

  • 备份旧版本二进制文件:
cp -r /home/antdb/app  /home/antdb/app.bak
  • 备份主备所有节点的数据目录(可选):
cp -r /home/antdb/data /home/antdb/data.bak

步骤四:开始交互式升级

开始交互式升级,-c 指定第一步修改的升级配置文件:

sh antdb_upgrade.sh -c setup/common/upgrade_conf.ini

注:

-b参数会将升级前AntDB二进制文件进行备份,并以时间日期结尾,例如:~/app/antdb-20230331-6264

步骤五:启动数据库

启动所有节点的 adbdcs 和 adbhamgr 服务,先启动主节点,后启动备节点:

sudo systemctl start adbdcs
sudo systemctl start adbhamgr

升级完成后,登录到数据库上,检查版本号是否正确:

select adb_version();
问题反馈