通过obd升级OceanBase数据库
2026/6/9 1:04:40 网站建设 项目流程

通过obd升级OceanBase数据库

  • 备份数据库
  • 升级数据库
  • 升级后验证

obd支持升级企业版和社区版OceanBase集群。

  • 当前版本:V4.3.5 BP3
  • 目标版本:V4.3.5 BP4

备份数据库

建议升级前前对数据库做一次备份。

./obdumper -h127.0.0.1 -P2881-u root -p ****** -t 租户名 -D 数据库名 --ddl --all -f /obdata/backup/DB_NAME/ddl_data ./obdumper -h127.0.0.1 -P2881-u root -p ****** -t 租户名 -D 数据库名 --csv --table'*'-f /obdata/backup/DB_NAME/csv_data

升级数据库

obd升级OceanBase数据库支持在线升级和离线升级两种方式。在线升级要求服务器可以连通公网或者镜像仓库中有用于更新的OceanBase数据库的RPM包。

⚠️ 待升级集群租户存在备租户的情况下,需先升级备租户所在集群,或执行switchover进行主备切换。

下面以离线升级为例进行演示。

  1. 配置RPM包。将下载好的安装包加入到本地镜像仓库中。
obd mirror clone -f oceanbase-4.3.5.4-xxxxxx.el7.x86_64.rpm
  1. 关闭远程镜像仓库。
obd mirror disable remote
  1. 查询本地镜像仓库中OceanBase数据库版本。
obd mirror listlocal|grepoceanbase-ce

最后一列字符串即为OceanBase对应版本的Hash值。

  1. 如果升级目标版本为V4.0.xV4.1.xV4.2.0 BETA版本时,需要执行当前步骤。否则忽略当前步骤。

使用root用户登录到数据库的sys租户,执行如下命令查看primary_zone配置。

select*from__all_tenant;

输出中需关注除sys租户外其他租户对应primary_zone列的值是否为RANDOM

如果是RANDOM,则需执行如下命令为租户中的Zone配置不同的优先级。

ALTERTENANT 租户名 primary_zone='zone1';
  1. 对OceanBase数据库进行合并操作。
ALTERSYSTEM MAJOR FREEZE;

检查合并是否完成:

selectname,valuefromoceanbase.__all_zonewherename='frozen_version'orname='last_merged_version';SELECT*FROMoceanbase.CDB_OB_MAJOR_COMPACTION\G
  1. 合并完成后,执行如下命令升级OceanBase数据库。升级时不能停库。
# 查看deply_nameobd cluster list# 升级数据库# obd cluster upgrade <deploy name> -c <component name> -V <version> [tags]obd cluster upgrade obcluster -c oceanbase -V4.3.5.4 -v

升级后验证

命令查看数据库版本:

selectversion();

查看集群状态:

obd cluster list obd cluster display<deploy name>

References
【1】https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000002016131
【2】https://www.oceanbase.com/docs/common-obd-cn-1000000003415263#11-title-obd%20cluster%20upgrade

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询