注意:

使用 PostgreSQL 将数据从内部部署 PostgreSQL 数据库迁移到 OCI 数据库

简介

PostgreSQL 是一项完全托管的服务,可以节省您在路由任务(例如打补丁、备份和存储管理)上的时间。我们的特殊功能是数据库优化的存储架构,它将 SQL 事务处理引擎与存储层分离,并提高系统的弹性和性能,其设计成本比 Amazon Aurora 低 60%,其性能比开源 PostgreSQL 部署高出约三倍。此外,它还与开源 PostgreSQL 完全兼容。

图像

我们可以使用 PostgreSQL 进行分析处理。PostgreSQL 基于 HTAP (混合事务/分析处理)体系结构,因此它可以处理联机分析处理 (Online Analytical Processing,OLAP) 和联机事务处理 (Online Transaction Processing,OLTP)。我们可以使用 PostgreSQL 执行创建 - 读取 - 更新 - 删除 (CRUD) 操作。

空间数据可以与空间数据库扩展器 PostGIS 一起使用。PostgreSQL 还支持在 SQL 和空间数据分析中对地理对象运行位置查询。PostGIS 符合高标准要求,提供数百种处理各种格式几何数据的功能,并且可以与量子地理信息系统 (Quantum Geographic Information System,QGIS) 和 GeoServer 一起使用,以便更轻松地处理地理数据。

在本教程中,我们将讨论如何使用 PostgreSQL 将数据从内部部署 PostgreSQL 数据库迁移到 Oracle Cloud Infrastructure (OCI) 数据库。PostgreSQL 主版本由版本号的前两个数字组表示,例如 14.9。我们将通过 pg_dump 从本地部署 PostgreSQL 的一个主要版本迁移数据,并将其重新加载到另一个 OCI 中,从而迁移数据库。由于 PostgreSQL 版本为 14.9 的 OCI 数据库现已可用,因此您可以使用 PostgreSQL 测试将数据从内部部署 PostgreSQL 迁移到 OCI 数据库。

目标

先决条件

注意事项

源环境

目标环境

任务 1:在 OCI 上创建 PostgreSQL 数据库

  1. 转到 OCI 控制台,导航到数据库PostgreSQL

    图像

  2. 单击创建数据库系统以创建 PostgreSQL 数据库系统。

    图像

  3. 选择创建类型中,单击创建新数据库系统

    图像

    它仅支持 PostgreSQL 版本 14 及更高版本。

    图像

  4. 我们将创建单个节点集群,但可以添加更多节点,因此输入节点计数1,支持的性能层300k IOPS。在这种情况下,第一个节点将充当主节点,其余节点将充当副本节点或辅助节点。

    图像

  5. 根据用法更改 ShapeRAM

    图像

    它支持专用端点,无法为 PostgreSQL OCI 创建公共 IP 地址。

    图像

    预配后,我们可以在与专用端点关联的一般信息中查看专用端点和 FQDN 的详细信息。

    图像

    如前所述,它仅创建专用端点,因此您无法直接连接到 PostgreSQL。如果需要从本地 pgAdmin 客户端进行连接,则必须为此端点的端口 5432(可选)创建堡垒会话并从本地 pgAdmin 进行连接。

    图像

    为了连接到 OCI 上的 PostgreSQL 数据库,我们可以使用计算实例。

    图像

  6. 创建名为 dvdrental_oci 的数据库。

    图像

任务 2:在目标 OCI PostgreSQL 数据库系统上传输对象和数据

在此任务中,我们使用 pgAdmin 转储实用程序从内部部署 PostgreSQL 数据库导出转储,源数据库版本为 13.13

图像

我们将从内部部署 PostgreSQL 数据库导出转储。

图像

注:如果您的目标数据库将是 Autonomous Data Warehouse、Oracle Database Cloud Service 或 Oracle Database,您甚至可以使用 OCI GoldenGate 进行初始加载,并将内部部署 PostgreSQL 数据库迁移到 OCI Database(使用 OCI GoldenGate 进行 PostgreSQL(联机))。

完成后,移动到目标端并开始导入。开始导入之前,请使用以下命令在 OCI 上授予权限。

GRANT ALL PRIVILAGES ON DATABASE dvdrental_oci to postgres;

图像

我们需要将从内部部署 PostgreSQL 数据库复制的数据加载到此 OCI 数据库中。

图像

任务 3:验证传输的数据库对象和数据

导入后,在目标 OCI PostgreSQL 数据库系统上验证传输的数据库对象和数据,以确保迁移成功并且没有问题或差异。

图像

图像

确认

更多学习资源

浏览 docs.oracle.com/learn 上的其他实验室,或者通过 Oracle Learning YouTube 频道访问更多免费学习内容。此外,请访问 education.oracle.com/learning-explorer 以成为 Oracle Learning Explorer。

有关产品文档,请访问 Oracle 帮助中心