文章目录

前言一、升级前的准备工作二、升级主要步骤1、查看当前数据库版本2、创建临时目录用于存放安装文件3、下载最新需要升级的版本并解压4、执行前置脚本 openGauss的 gs_preinstall5、执行升级操作6、升级检查7、提交升级:

三、附本期小知识

前言

数据库版本升级在日常工作虽然不是非常频繁,但却必不可少。主要涉及到DBA或者数据库运维人员,因为数据库版本升级在运维管理过程中是一项要求极高的工程,其对时效性、准确性、安全性等要求都非常高。 openGauss数据库3.1.1刚刚发布不久,本文就带大家简单了解一下openGauss数据库的单机版升级过程。

一、升级前的准备工作

1、用户根据openGauss提供的新特性和数据库现状,确定是否对现有系统进行升级。 2、本次实验采用就地升级:升级期间需停止业务活动(一次性升级所有节点)。 3、升级版本:可从低版本升级到高版本,本次是将openGauss 2.0.1升级到最新版本3.1.1 (单机架构) 4、数据库文件备份、业务数据备份。升级一旦失败,有可能会影响到业务的正常开展,提前备份数据,就可以在风险发生后,尽快的恢复业务。(本次不作为重点阐述) 5、升级流程图:

6、检查数据库状态:gs_om -t status ,保证在数据库处于正常状态下进行升级操作。 7、获取升级包:在opengauss网站获取对应版本的升级包。

二、升级主要步骤

1、查看当前数据库版本

切换到 su – omm 用户,执行命令 gsql –version

2、创建临时目录用于存放安装文件

mkdir -p /opt/software/gaussdb_upgrade

cd /opt/software/gaussdb_upgrade

3、下载最新需要升级的版本并解压

1)执行命令:

wget https://opengauss.obs.cn-south-1.myhuaweicloud.com/3.1.1/x86/openGauss-3.1.1-CentOS-64bit-all.tar.gz

(说明:此过程,也可以手工在官网下载对应安装包,通过ftp上传到目标服务器路径上。) 2)解压: 执行命令:

tar –zxvf *

本次选择“openGauss-3.1.1-CentOS-64bit-om.tar.gz” 安装包。 执行命令:tar -zxvf openGauss-3.1.1-CentOS-64bit-om.tar.gz

4、执行前置脚本 openGauss的 gs_preinstall

在就地升级前执行前置脚本gs_preinstall。 1)进到解压后的目录:cd /opt/software/gaussdb_upgrade/script 2)执行命令:

./gs_preinstall -U omm -G dbgrp -X /soft/openGauss/clusterconfig.xml

如截图,提示“preinstallation succeeded” 则完成当前操作。

5、执行升级操作

切换至据库用户 su - omm,执行升级操作,这里采用就地升级:使用gs_upgradectl脚本执行就地升级。 执行命令:gs_upgradectl -t auto-upgrade -X /soft/openGauss/clusterconfig.xml 。 如截图,提示升级完成,等待检查及提交。

6、升级检查

1)查看版本,执行命令:gsql –version 当前数据库已经从2.0.1升级到3.1.1 版本了。

2)查看状态,执行命令:gs_om -t status ,当cluster_state 的值为 Normal, 则表示升级成功。

7、提交升级:

执行命令:

gs_upgradectl -t commit-upgrade -X /soft/openGauss/clusterconfig.xml

如截图,提交成功。

8、回滚 在一些特殊情况下,数据库需要回滚,可执行如下命令行: 1)正常回滚: gs_upgradectl -t auto-rollback -X /soft/openGauss/clusterconfig.xml

2)强制回滚(如果回滚异常时) gs_upgradectl -t auto-rollback -X /soft/openGauss/clusterconfig.xml --force

三、附本期小知识

升级过程中会遇到解压文件、文件权限授权等操作, 所以本期附带两个小知识点: 1、linux系统下的解压命令 tar.bz2解压命令: tar –jxvf xxx.tar.bz2 tar.gz文件命令是:tar -zxvf xxx.tar.gz

拓展资料: 在Linux平台,tar是主要的打包工具。tar命令通常用来把文件和目录压缩为一个文件( tarball 或 tar, gzip 和 bzip)。 Tar命令选项: c – 创建压缩文件 x – 解压文件 v – 显示进度. f – 文件名. t – 查看压缩文件内容. j – 通过bzip2归档 z –通过gzip归档 r – 在压缩文件中追加文件或目录 W – 验证压缩文件 2、chmod 命令 1)什么是 chmod? chmod 命令可以用来修改用户对某个文件活文件夹的权限,在Linux 系统中,文件的基本权限由 9 个字符组成,以 rwxrw-r-x 为例,我们可以使用数字来代表各个权限,各个权限与数字的对应关系如下: r --> 4 w --> 2 x --> 1

拿 rwxrw-r-x 来说,所有者、所属组和其他人分别对应的权限值为: 所有者 = rwx = 4+2+1 = 7 所属组 = rw- = 4+2 = 6 其他人 = r-x = 4+1 = 5

所以,此权限对应的权限值就是 765。

r、w、x 分别表示读、写、执行权限

2)如何修改文件权限? 如修改 /etc/hosts 文件。 查看修改前 /etc/hosts,如图所示只有所有者有权限操作 /etc/hosts 文件

ls -la /etc/hosts

这时我们想让其他人有权限操作 /etc/hosts,执行以下命令 sudo chmod 707 /etc/hosts 可以发现权限变成了 rwx—rwx,其他人也有权限操作 /etc/hosts 了

3)操作文件夹 ,需要加入 -R 参数 sudo chmod -R 707 [所要操作的文件夹名称]

4)使用字母修改文件权限 首先权限的 3 种用户身份所有者、所属组和其他人分别用字母代表 u、 g、 o ,其次 a 代表所有身份。

修改示例: 表示 所有者(u)的权限为 rwx sudo chmod u=rwx /etc/hosts

表示 所有者(u)的权限增加 r sudo chmod u+r /etc/hosts

表示 所有者(u)的权限增加 rx sudo chmod u+rx /etc/hosts

表示 所有者(u)的权限取消 x sudo chmod u-x /etc/hosts

多个命令一起操作用 , 进行分割 sudo chmod u-x,o+rw /etc/hosts

以上内容到此结束, 欢迎测试、交流!

参考文章

评论可见,请评论后查看内容,谢谢!!!
 您阅读本篇文章共花了: