VastbaseG100

基于openGauss内核开发的企业级关系型数据库。

Menu

V2.2 Build 5

升级方法介绍

方法一: 以下简称为“重新初始化”

所有用户自定义的对象和数据都需要从旧库导出,再导入到新库。

  1. 使用vb_dump导出所有对象和数据。
  2. 使用数据库安装程序安装新的数据库。
  3. 开启数据库。
  4. 使用vb_restore导入步骤1中的备份数据到新库中。

方法二: 以下简称为“替换升级”

直接替换安装目录并重启数据库即可,步骤如下:

1、 停止数据库。

2、 解压安装包,把bin、include、lib、share四个目录替换到数据库安装目录下。 具体操作步骤如下: (1)解压安装包,第一次解压(安装包以实际为准)。

tar xf Vastbase-G100-installer-2.2_Build_5.161-openeuler_20.03-aarch64_kunpeng-20220812.tar.gz

(2)解压后进入vastbase-installer目录,进行第二次解压。

tar xf Vastbase-G100-2.2_Build_5.161-openeuler_20.03-aarch64_kunpeng.tar.gz

(3)第三次解压。

tar xf Vastbase-G100-2.2_Build_5.161-openeuler-64bit.tar.gz

(4)将解压之后的bin、include、lib、share四个目录替换到现有数据库安装目录下。 3、开启数据库。

方法三: 以下简称为“工具升级”

参见”快速入门->升级说明“章节。

版本升级指南

版本号说明

例:V2.2 Build 5(Patch No.1)

大版本:2.2

Build:5

Patch:补丁号,本例中为1

1、 不同大版本以及不同Build的升级必须使用方法一升级。

2、 补丁升级请遵循以下规则(升级前后版本均为V2.2 Build 5,以下表格只体现Patch(补丁号))。

升级前\升级后 V2.2 Build 5 Patch No.1~Patch No.25 Patch No.39 Patch No.75 Patch No.100 Patch No.120 Patch No.161 Patch No.173
<Patch No.0 重新初始化 重新初始化 重新初始化 重新初始化 重新初始化 重新初始化 重新初始化 重新初始化
>=Patch No.0 N/A 替换升级 替换升级 + 手工运行升级模式 工具升级 工具升级 工具升级 工具升级 工具升级

注意: 若原版本号<V2.2 Build 5(Patch No.100),且已使用存储加密或者gs_encrypt函数的SM4算法,需重新初始化,具体见V2.2 Build 5(Patch No.100)注意事项。


Vastbase G100 V2.2 Build 5

发布日期

2021年09月13日

新特性

1、 Oracle兼容性

  • 支持BFILE数据类型
  • PLpgSQL-TYPE … IS RECORD
  • PLpgSQL支持集合类型
  • 内置包DBMS_LOB
    • DBMS_LOB.FILEOPEN
    • DBMS_LOB.READ
    • DBMS_LOB.FILECLOSE
  • 支持pivot操作

2、 ECPG工具适配Vastbase

3、 RAS:对于SIGBUS信号的处理

4、 RAS:基于4p pro的故障感知

特性优化

1、 Oracle兼容性

  • 内置包DBMS_LOB功能增强,新增DBMS_LOB.GETLENGTH函数支持获取BFILE对象的长度

2、 upsert功能增强

  • 兼容PG中upsert的用法

3、 DBLINK功能增强

  • 支持调用远程数据库的存储过程与函数

4、 密码有效期最大值修改为100*365天

5、 WDR snapshot更新统计信息

6、 全局分区索引适配支持ANALYZE VERIFY FAST

缺陷修复

1、 【ID1005180】修复函数中的connect by语句无法传入变量的问题

2、 【ID1005363】修复汉化环境下调用函数导致数据库宕机的问题

3、 【ID1005401】修复对于函数有多个传参类型,无法指定函数调用的问题

4、 【ID1005804】修复创建的用户名包含##时不能创建的问题

5、 【ID1005893】修复聚集SQL中rownum未出现在group by clause报错的问题

6、 【ID1005963】修复表字段为sessiontimezone时,插入数据时不带双引号报错的问题

7、 【ID1006054】修复重命名SCHEMA后,使用\d 命令查看带序列的表结构报错的问题

8、 【ID1006135】修复创建或修改行存表时,字段名称为tid时会报错的问题

9、 【ID1006153】修复REGEXP_REPLACE函数没有适配Oracle的问题

10、 【ID1006156】修复jdbc_fdw访问数据表字段为Vastbase关键字时无法识别的问题

11、 【ID1006273】修复初始化GBK字符集数据库报错的问题

12、 【ID1006308】修复建表使用link关键字报错的问题

13、 【ID1005771】修复security lable帮助信息缺少表字段相关信息的问题

14、 【ID1005788】修复审计开关无法开启的问题

15、 【ID1005880】修复使用gs_guc工具设置参数,输出异常提示的问题

16、 【ID1006016】修复vb_dump导出PACKAGE,vsql导入失败的问题

17、 【ID1006141】修复删除pldbgapi扩展失败的问题

18、 【ID1006151】修复PIPELINED与PIPE ROW无法使用的问题

19、 【ID1006157】修复参数vastbase_login_info不生效,无法开启登录信息显示的问题

20、 【ID1006192】修复KylinV10SP1使用安装程序安装数据库提示缺少依赖的问题

21、 【ID1006254】修复三权分立下,管理员使用pg_restore导入数据库后,三权分立状态自动关闭的问题

22、 【ID1006304】修复USER_TAB_PARTITIONS视图不显示分区信息的问题

23、 修复恢复pg_dw_single文件时跳过了对索引为0位置的数据页面的处理的问题

24、 修复分区表交换分区时,如果指定verbose会报错的问题

25、 修复普通表的数据迁移到分区报错,压缩标记有定义的时候,把它置为NOCOMPRESS

26、 修复分区表并发访问,锁冲突导致的系统hang

27、 修复gs_probackup增量备份数据不完整的问题

28、 修复两个memcheck检测到的内存越界访问问题

29、 修复build完成后数据flush落盘

30、 修复cm_ctl build时产生core文件的问题

31、 扩展逻辑复制时候,cmd命令的长度限制从1024到100*1024

32、 向心跳线程发送SIGTERM信号时机后移

33、 增加nblock cache,降低smgrnblock造成的系统负载高

34、 修复fix shared_buffers设置极小时,淘汰策略ring size为0的问题&设置过大时,可能存在的内存问题

35、 修复report_iud_time函数中try catch跳转后锁队列混乱的问题

36、 修复极致rto脏页面漏刷问题

37、 修复远程读因invalidbuffer频繁core问题

38、 修复执行引擎的两个问题

39、 修复guc参数 behavior_compat_options 设置为-1时,statement_history内is_slow_sql字段依然为true的问题

40、 修复autovacuum分区表问题

41、 修复执行业务期间,upsert语句报错unrecognized heap_lock_tuple status:4的问题

42、 修复子事务里内存报错core问题

43、 修复heap-use-after-free checkstatement-stat-level问题

44、 修复percentworker在业务空闲场景下,线程占用cpu 7%的问题

45、 The SIGUSR2 flag bit is reset to False when a thread exits and interrupts are interrupted

46、 打印日志过程中增加屏蔽响应信号机制

47、 lib文件夹下的安全编译

48、 修复basebackup内存泄露问题

49、 修复probackup内存泄露问题

50、 修复 arm 机器 buf_state读取不到最新值的问题

51、 修复打开线程池频繁出现卡死问题,影响业务正常建立连接的问题

注意事项

1、 暂不支持汉化功能

2、 暂不支持语法CREATE MATERIALIZED VIEW WITH NO DATA

3、 暂不适配enable_opfusion参数,请关闭此参数以避免数据库宕机,另生产环境中不建议开启此参数

4、 参数query_dop设置为1,否则可能会引起SQL执行出错

5、 此版本暂不支持mysql_fdw功能

6、 不能注释参数wal_level及max_wal_senders

7、 为了避免备库增量同步失败问题:”FATAL: Forbit remote connection with initial user. gs_rewind receive ERROR, it will exist.“,请在主库pg_hba.conf文件中添加以下行:

# 必须写在 host all all 0.0.0.0/0 md5 行前面
host all <数据库初始用户名> <备库IP地址>/32 trust

8、 参数synchronous_commit不能设置为remote_apply,否则可能会存在严重的性能问题

9、 凝思操作系统下审计功能存在缺陷,需暂时关闭,设置参数audit_enabled=off

10、 在高负载情况( 7x24小时TPC-C测试)下,同步备库会有xlog日志堆积的问题,避免此问题有两种解决方法:

(1)开启极致RTO

(2)在不存在异步备的情况下开启流控

enable_xlog_prune=on
recovery_time_target=1800 #开启流控,指备机能够在recovery_time_target时间内完成日志的写入和回放,单位为秒,示例表示1800秒即30分钟