文档中心MogDBMogDB StackUqbar
v5.0

文档:v5.0

支持的版本:

其他版本:

升级前必读

升级影响和约束

升级包含以下影响和约束,在升级前应该做好充分检查和了解,确保条件都能满足的情况下再进行升级,如果有任何疑问需联系原厂工程师。

  • 升级操作不能和扩容、缩容同时执行。
  • 就地升级不涉及VIP,滚动升级期间CM会自动漂移VIP。
  • 升级过程中,不允许对wal_level,max_connections,max_prepared_transactions,max_locks_per_transaction这四个GUC参数的值进行修改。如果修改,会导致回滚后实例启动异常。
  • 建议在数据库系统空闲情况下进行升级,尽量避开业务繁忙的时间段(可按照经验判断,如节假日等)。
  • 升级前尽可能保证数据库状态正常。通过PTK安装的版本可通过ptk cluster -n <CLUSTER_NAME> status命令查看集群状态,Normal代表集群所有实例正常可用。通过OM安装的版本可以通过gs_om -t status查询,查询结果的cluster_state为Normal代表数据库正常可用。
  • 升级前保证数据库互信正常,可以在任意节点上,通过ssh hostname命令,连接另外一个节点进行验证。如果各机器间互连不用输入密码,说明互信正常(通常数据库状态正常时,互信一般都是正常的)。
  • 升级前后,数据库的部署方式(配置文件)不能发生变化。升级前PTK会对部署方式进行校验,如果改变会报错。
  • 数据库运行正常且主DN的数据完全同步到备DN。
  • 升级过程中不允许打开kerberos开关。
  • PTK自1.5版本开始支持部署了CM的数据库集群的升级。
  • 集群流复制参数需开启(enable_stream_replication)。

各版本注意事项

当前版本为3.0.X

如果原数据库版本为3.0.X,需要检查是否存在包含rownum和connect by语法的视图。

可以通过如下语句来获取视图定义,检查其是否存在rownum或者connect by语法:

select pg_get_viewdef('viewname') def where def like '%ROWNUM%' or def like '%CONNECT BY%' ;

如果存在这样的视图,需执行以下操作:

  1. 获取视图定义

    Select pg_get_viewdef('v1'); 

    v1代表存在rownum或者connectby语法的视图名称。

  2. 删除相关视图

    Drop view v1;
  3. 升级完成后使用原视图定义重建这些视图

    Create view as viewdef;

    viewdef代表第一步中获取的视图定义。


目标版本为5.0.6

MogDB 5.0.6新增并行导入导出功能(详见逻辑备份恢复效率增强),该功能依赖于新增内置插件tidrangescan。升级完成后,如需使用gs_dump、gs_restore并行导入导出功能,需在要进行导入导出的库里手动创建tidrangescan插件:

create extension tidrangescan;

目标版本为5.0.8

5.0.8之前的版本升级到5.0.8的情况下,使用dolphin插件的B兼容性数据库,做union(集合计算)的时候,所有文本类型均会转为text类型(支持多个union的类型推断和转换,确保union返回结果集类型固定),对于在5.0.8版本之前使用了dolphin插件的情况,需要客户端做适配改造。

Copyright © 2011-2024 www.enmotech.com All rights reserved.