openGauss数据库3.0.0升级5.0.0操作实践

news2024/11/24 2:06:24

文章目录

  • 1.1 前言
  • 1.2 升级须知
    • 升级流程
    • 升级方式
    • 升级约束
  • 1.3 升级前准备
  • 1.4 升级操作
  • 1.5 升级验证
  • 1.6 提交升级

1.1 前言

openGauss是一款开源关系型数据库管理系统,采用木兰宽松许可证v2发行。之前基于3.0.0版本进行了一些实践,本篇就详细介绍如何将openGauss数据库从3.0.0升级到最新发布的5.0.0版本。

1.2 升级须知

升级流程

在这里插入图片描述

升级方式

用户挑选升级方式后,系统会自动判断并选择合适的升级策略。

  • 就地升级:升级期间需停止业务进行,一次性升级所有节点。
  • 灰度升级:灰度升级支持全业务操作,也是一次性升级所有节点。(openGauss1.1.0版本之后的版本支持该功能)
  • 滚动升级:基于灰度升级,支持升级指定节点,支持部分节点升级。(openGauss3.1.0版本之后的版本支持该功能)。
    本次我们采用灰度升级方式。

升级约束

升级约束官网文档详细列出,具体就不再一一列举。主要就是升级期间不要做增删改。生产和商业环境务必按照要求执行。

1.3 升级前准备

1.检查OS。

[root@hecs-1105531 etc]# cat centos-release
CentOS Linux release 7.6.1810 (Core)

2.检查升级前版本

[omm@hecs-1105531 ~]$ gsql --version
gsql (openGauss 3.0.0 build 02c14696) compiled at 2022-04-01 18:12:34 commit 0 last mr

3.查看数据库节点磁盘使用率,低于80%时再执行升级操作。

[omm@hecs-1105531 ~]$ df -h
Filesystem      Size  Used Avail Use% Mounted on
devtmpfs        1.9G     0  1.9G   0% /dev
tmpfs           1.9G   24K  1.9G   1% /dev/shm
tmpfs           1.9G  175M  1.7G  10% /run
tmpfs           1.9G     0  1.9G   0% /sys/fs/cgroup
/dev/vda1        40G  9.3G   28G  25% /
tmpfs           379M     0  379M   0% /run/user/0

4.以数据库用户(如omm)登录节点,确认数据库状态Normal。

[omm@hecs-1105531 ~]$ gs_om -t status
--------------------------------------------------------------------

cluster_name    : ogCluster
cluster_state   : Normal
redistributing  : No

----------------------------------------------------------------------

5.以root用户执行如下命令对服务器的OS参数进行检查。检查服务器的OS参数的目的是为了保证数据库正常通过预安装,并且在安装成功后可以安全高效的运行。详细的检查项目请参见《工具参考》中的“服务端工具 > gs_checkos”工具。

cd /root/gauss_om/omm/script/
gs_checkos -i A

在这里插入图片描述

6.官网并没有单独的升级包,所以根据情况获取新的版本包。本次操作的基础版本是centos企业版,继续获取5.0.0企业版。
https://opengauss.org/zh/download.html
在这里插入图片描述

7.手动备份
升级一旦失败,有可能会影响到业务的正常开展。如有重要数据,请参考《数据库运维指南》中的“备份与恢复”章节,完成数据的备份。

1.4 升级操作

1.root用户创建新包目录。

mkdir -p /opt/software/gaussdb_upgrade

2.将需要更新的新包上传至目录“/opt/software/gaussdb_upgrade”并解压。

[root@hecs-1105531 script]# mkdir -p /opt/software/gaussdb_upgrade
[root@hecs-1105531 script]# cp /opt/software/openGauss-5.0.0-CentOS-64bit-all.tar.gz /opt/software/gaussdb_upgrade/
[root@hecs-1105531 script]# cd /opt/software/gaussdb_upgrade
[root@hecs-1105531 gaussdb_upgrade]# tar -zxvf openGauss-5.0.0-CentOS-64bit-all.tar.gz
[root@hecs-1105531 gaussdb_upgrade]# tar -zxvf openGauss-5.0.0-CentOS-64bit-om.tar.gz

3.进入安装包解压出的script目录下,在升级前执行前置脚本gs_preinstall。cluster_config.xml是之前安装基础版本时所使用的那个文件。

cd /opt/software/gaussdb_upgrade/script
./gs_preinstall -U omm -G dbgrp -X  /opt/software/openGauss/cluster_config.xml

执行过程如下

[root@hecs-1105531 script]# ./gs_preinstall -U omm -G dbgrp  -X /opt/software/openGauss/cluster_config.xml
Parsing the configuration file.
Successfully parsed the configuration file.
Installing the tools on the local node.
Successfully installed the tools on the local node.
Setting host ip env
Successfully set host ip env.
Are you sure you want to create the user[omm] (yes/no)? no
Preparing SSH service.
Successfully prepared SSH service.
Checking OS software.
Successfully check os software.
Checking OS version.
Successfully checked OS version.
Creating cluster's path.
Successfully created cluster's path.
Set and check OS parameter.
Setting OS parameters.
Successfully set OS parameters.
Warning: Installation environment contains some warning messages.
Please get more details by "/opt/software/gaussdb_upgrade/script/gs_checkos -i A -h hecs-1105531 --detail".
Set and check OS parameter completed.
Preparing CRON service.
Successfully prepared CRON service.
Setting user environmental variables.
Successfully set user environmental variables.
Setting the dynamic link library.
Successfully set the dynamic link library.
Setting Core file
Successfully set core path.
Setting pssh path
Successfully set pssh path.
Setting Cgroup.
Successfully set Cgroup.
Set ARM Optimization.
No need to set ARM Optimization.
Fixing server package owner.
Setting finish flag.
Successfully set finish flag.
Preinstallation succeeded.

4.切换至omm用户 使用如下命令进行就地升级或者灰度升级。最后提示successfully upgrade all nodes.就可以了。

[omm@hecs-1105531 ~]$ gs_upgradectl -t auto-upgrade -X /opt/software/openGauss/cluster_config.xml --grey
Static configuration matched with old static configuration files.
Successfully set upgrade_mode to 0.
Checking upgrade environment.
Successfully checked upgrade environment.
Start to do health check.
Successfully checked cluster status.
Upgrade one node 'hecs-1105531'.
NOTICE: The directory /opt/huawei/install/app_02c14696 will be deleted after commit-upgrade, please make sure there is no personal data.
Performing grey rollback.
No need to rollback.
The directory /opt/huawei/install/app_02c14696 will be deleted after commit-upgrade, please make sure there is no personal data.
Installing new binary.
copy certs from /opt/huawei/install/app_02c14696 to /opt/huawei/install/app_a07d57c3.
Successfully copy certs from /opt/huawei/install/app_02c14696 to /opt/huawei/install/app_a07d57c3.
Successfully backup hotpatch config file.
Sync cluster configuration.
Successfully synced cluster configuration.
Switch symbolic link to new binary directory.
Successfully switch symbolic link to new binary directory.
Start check CMS parameter.
Switching all db processes.
Check cluster state.
Cluster state: [   Cluster State   ]

cluster_state   : Normal
redistributing  : No
current_az      : AZ_ALL

[  Datanode State   ]

    node        node_ip         port      instance     state
----------------------------------------------------------------------------
1  hecs-1105531 192.168.0.243   15400      6001       P Primary Normal
Create checkpoint before switching.
Start to wait for om_monitor.
Switching DN processes.
Ready to grey start cluster.
Grey start cluster successfully.
Wait for the cluster status normal or degrade.
Successfully switch all process version
The nodes ['hecs-1105531'] have been successfully upgraded to new version. Then do health check.
Start to do health check.
Successfully checked cluster status.
Waiting for the cluster status to become normal.
.
The cluster status is normal.
Upgrade main process has been finished, user can do some check now.
Once the check done, please execute following command to commit upgrade:

    gs_upgradectl -t commit-upgrade -X /opt/software/openGauss/cluster_config.xml

Successfully upgrade all nodes.

1.5 升级验证

以数据库用户(如omm)执行如下命令查看数据库状态,查询结果的cluster_state为Normal代表数据库正常。

gs_om -t status
gs_ssh -c "gsql -V"

在这里插入图片描述

用户可以自行验证其他数据库对象。

1.6 提交升级

升级完成后,如果验证也没问题,接下来就可以提交升级,需要注意的是,一旦提交操作完成,则不能再执行回滚操作。
以数据库用户(如omm)执行如下命令完成升级提交。

[omm@hecs-1105531 ~]$ gs_upgradectl -t commit-upgrade  -X /opt/software/openGauss/cluster_config.xml

在这里插入图片描述

至此,openGauss3.0.0升级5.0.0版本完成。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/531366.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Win7/Win10/Win11系统怎么显示文件后缀

在不同版本的Windows系统中,如Win7/Win10/Win11,显示文件的后缀名可能会有所不同。为了方便用户在进行文件管理时更加方便和高效,本文整理了Win7/Win10/Win11系统中显示文件后缀的具体方法,希望能帮助大家更加轻松地管理自己的文件…

展会进行时!5月16-18日箱讯与您相约中国航交会

宁波国际会展中心7、8号馆 第五届中国(宁波)国际航运物流交易会 暨2023全球物流企业合作博览会 火爆进行中 箱讯与您相约 8号馆 C033K-C036展位 期待您的光临! 2023年5月16-18日,第五届中国(宁波)国际…

Grafana系列-统一展示-11-Logs Traces无缝跳转

系列文章 Grafana 系列文章 概述 如前文 Grafana 系列 - 统一展示 -1- 开篇所述, Grafana 可以了解所有相关的数据--以及它们之间的关系--对于尽快根治事件和确定意外系统行为的真正来源非常重要。Grafana 允许团队在一个地方对所有的数据进行无缝的可视化和跳转。 最典型的…

MySQL8.0 优化器介绍(四)

GreatSQL社区原创内容未经授权不得随意使用,转载请联系小编并注明来源。GreatSQL是MySQL的国产分支版本,使用上与MySQL一致。作者: 奥特曼爱小怪兽文章来源:GreatSQL社区原创 往期回顾 MySQL8.0 优化器介绍(一&#x…

Midjourney|文心一格prompt教程[基础篇]:注册使用教程、风格设置、参数介绍、隐私模式等

Midjourney|文心一格prompt教程[基础篇]:注册使用教程、风格设置、参数介绍、隐私模式等 开头讲一下为什么选择Midjourney和文心一格,首先Midjourney功能效果好不多阐述;其次文心一格再多次迭代优化后效果也不错,重点也免费&…

【Kubernetes】| K8s基础组件分析

目录 一. 🦁 前言二. 🦁 K8s vs Docker三. 🦁 K8s基础组件3.1 Master组件3.1.1 api server3.1.2 controller manager3.1.3 scheduler3.1.4 etcd 3.2 Node组件3.2.1 kublet3.2.2 kube-proxy 四. 🦁 最后 一. 🦁 前言 Ku…

antd-vue-admin——通过链接跳过登录页直接进入系统内部——基础积累

最近在写后台管理系统,遇到一个需求,就是从系统A带参数可以直接进入到系统B内部。不通过系统B的登录页面进行登录。 一般系统的登录,都需要用户名和密码等参数,然后获取到token信息,最后进入到系统内部。 下面介绍具…

5-16SQL每日一题

如下两张表,G0516A和G0516B 要求G0516B按顺序与G0516A的第一个WEEK1依次有序的组合,直到依次组合完毕,预计结果如下: 测试数据: CREATE TABLE G0516A ( WEEKS VARCHAR(10) ) INSERT INTO G0516A VALUES (‘WEEK1…

Socket请求和Http请求区别和场景

我们在开发过程中遇到http请求和socket请求。大部分前后交互都是通过http请求的方式,那socket请求怎么使用,什么情况下使用呢? 基本概念 http请求:基于http协议的soap协议,常见的http数据请求方式有get和post&#xf…

OpenCV实现图像的缩放几何变换,图像金字塔,高斯不同

1.前言 实现图像的放大(zoom in)和缩小(zoom out)主要通过两种途径: 几何变换。图像金字塔。 2.几何变换 通过几何变换实现图像放大和缩小功能主要是通过OpenCV的resize函数: 1 2 3 4 5 6 7 8void resi…

二.深度学习yolov5 比特家异构计算 训练与转模型01

(备份笔记 仅记录) 走国产化路上 要离开老黄的NVIDIA了,现在摸索下比特家的异构计算 yolo还停在v3的阶段 因为之前v3就已经够产品化去用了。这次也走下yolov5吧! 1.yolov5环境搭建 2.yolov5模型训练 3.yolov5模型测试 4.模型做truck 5.模型转换为…

【六袆 - Design Pattern】Strategy Pattern;策略模式;

JDK8源码使用的策略模式列举 java.util.comparator接口用于对对象进行排序。Comparator接口的compare()方法将两个对象作为参数,并返回一个整数值,表示这两个对象的相对顺序。比较器接口有许多不同的实现,每个实现都有不同的排序算法。例如&a…

OpenPCDet系列 | 5.4 PointPillars算法——AnchorHeadSingle模型预测头模块

文章目录 AnchorHeadTemplate模块1. AnchorGenerator2. ResidualCoder3. AxisAlignedTargetAssigner AnchorHeadSingle模块1. AnchorHeadSingle初始化2. AnchorHeadSingle训练前向传播3. AnchorHeadSingle测试前向传播 OpenPCDet的整个结构图: PointPillars算法属…

人人可用的开源数据可视化分析工具

大家好,我是互联网架构师! 在互联网数据大爆炸的这几年,各类数据处理、数据可视化的需求使得 GitHub 上诞生了一大批高质量的 BI 工具。 借助这些 BI 工具,我们能够大幅提升数据分析效率、生成更高质量的项目报告,让用…

UE4/5中DataTable数据表的使用

我们在UE中经常要对配置数据进行编辑,用好UE自己的DataTable自然对日常使用有所帮助。 1.蓝图使用流程 1.1 DataTable创建 使用数据表首先得创建自定义结构体,这样才好定义每一行的格式,例如这里创建如下: 然后右键选择创建Da…

LiveGBS流媒体平台GB/T28181功能-NVR硬件下级平台级联上来的通道如何过滤过滤通道类型

LiveGBS流媒体平台GB/T28181功能-NVR硬件下级平台级联上来的通道如何过滤过滤通道类型 1、上来的通道多了怎么办?2、过滤通道类型2.1、设备单独过滤2.2、全局过滤通道类型 3、过滤指定通道国标编号4、搭建GB28181视频直播平台 1、上来的通道多了怎么办? 下级平台或是NVR设备…

个人黄金投资好做吗?黄金投资交易优势体现在哪些方面

黄金的高保值性深受市场喜爱,它兼具商品和货币的双重属性。不仅实物黄金备受青睐,就连黄金投资交易也受到市场喜爱。黄金投资交易优势主要有哪些要点呢? 黄金投资交易优势一、稀有性 黄金的价值是固有的、内在的,具有千年不朽的稳…

跟庄买股票得新技巧(2023.05.16)(第二弹)

北向资金(也叫聪明的钱),它如何潜伏的(上周) 设么,你投诉大叔不写代码?好吧给你北向资金的代码 { 选股条件: 北向资金流入是昨天的两倍以上 } 百分比:REF(GPJYVALUE(6,1,1),1)>…

HttpClient5如何设置代理

文章目录 说明原始HttpClient代理HttpClient总结 说明 在这篇文章中会对HttpClient5如何进行代理进行说明,我的HttpClient版本是5.2.1。在进行代理之前请先准备好代理服务器。 原始HttpClient 下面是没有进行代理设置的代码,尝试去访问openai接口 Tes…

监控室值班人员脱岗睡岗识别算法 yolov7

监控室值班人员脱岗睡岗识别算法基于Yolov7深度学习神经网络算法,监控室值班人员脱岗睡岗识别算法模型可以7*24小时不间断自动人员是否在工位上(脱岗睡岗玩手机),若人员没有在工位,系统则立即抓拍告警,算法…