从postgresql 导出sql 脚本

工具-备份
在这里插入图片描述

选择格式为Plain
在这里插入图片描述

得到脚本用vscode 打开并编辑

首先使用查找替换功能

语法适配修改‌:

替换不支持的参数如lock_timeout为lockwait_timeout

移除row_security等openGauss不支持的配置

检查并修改物化视图的刷新语法
‌特点‌:物理存储查询结果,需手动刷新以提高查询性能
不建议将pg的物化视图修改为opengauss的物化视图,修改为一般视图
执行以下命令时,发现这个视图和表在一起。
在这里插入图片描述
在这里插入图片描述

依赖关系处理

确保所有被引用的表、序列等对象已存在
按依赖顺序执行脚本(先基础表,后视图)

执行迁移‌:

gsql -d target_db -U gaussdb -W ‘password’ -p 5432 -f adapted_views.sql
在这里插入图片描述

常见问题

对象不存在错误‌

先创建缺失的基础表或序列
检查对象名大小写敏感性(建议统一使用双引号)

权限错误‌:

GRANT USAGE ON SCHEMA public TO user_name;
GRANT SELECT ON ALL TABLES IN SCHEMA public TO user_name;

性能优化‌

openGauss对复杂视图查询有不同优化策略,可能需要调整

Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐