为 Oracle 对象存储添加复制

了解如何为 Oracle 对象存储目标添加和配置复制进程。

开始之前

在添加复制之前,请确保具有:

添加复制 (26ai)

确保查看特定于此目标类型的先决条件

  1. 在 OCI GoldenGate 部署控制台导航菜单中,选择 Replicat

  2. 在 "Replicat"(复制)页面上,选择 Add Replicat(添加复制)

  3. 在“添加复制”面板的复制信息页上,根据需要填写字段,然后选择下一步

    • 选择复制类型

      • 经典复制

      • 协调的复制

    • 输入 Process Name(流程名称),长度不超过 5 个字符。

    • 输入说明,以帮助区分此流程与其它流程。

  4. 复制选项页上,根据需要填写字段,然后选择下一步

    • 复制线索:

      • 输入名称

      • 如果希望 Trail 文件位于非默认位置,请输入 Subdirectory

      • 选择 Encryption profile 。如果未创建加密配置文件,则默认情况下会选择本地 Wallet。

      • 对于开始,选择数据处理的起点:

        • 日志中的位置(默认值)

        • Now

        • 定制时间

    • 线索位置:

      • 输入序号

      • 输入 RBA 偏移

      • 从下拉列表中选择目标

        注:根据您的目标选择,您可能具有流处理、暂存和合并以及暂存位置等附加选项。

    • 目标身份证明:

      • 选择

      • 选择指定域中的别名

      • 选择检查点表。保留默认选择,或选择为目标部署创建的检查点表。

      • 选择 Max Threads Number (最大线程数)(仅限协调复制)。

  5. 托管选项页面上,根据需要填写可选字段,然后选择下一步

    • 选择配置文件名称(如果有)。

    • 对于部署的健康状况至关重要。

    • 启用和配置自动启动设置。

  6. Parameter File(参数文件)页面上,可以添加参数以进一步配置复制。例如:

    table source.table1;

    注:

    默认情况下,GoldenGate 使用格林威治标准时间 (GMT)。使用 SETENV 覆盖复制的默认设置。此更改不适用于部署。例如:

    setenv (TZ="US/Eastern")
    setenv (TZ="GMT+5")
  7. 在“属性文件”页上,根据需要配置文件处理程序和 OCI 事件处理程序属性,然后选择下一步。要考虑修改的一些属性包括:

    1. gg.handler.name.format:选择如何设置输出数据的格式。可用的选项包括:

      • delimitedtext

      • json

      • json_row

      • xml

      • avro_row

      • avro_op

      • avro_row_ocf

      • avro_op_ocf

      对于 parquet,必须应用其他属性。有关详细信息,请参阅用于 Oracle 对象存储的参数

    2. gg.handler.name.fileNameMappingTemplate:使用 Template Keywords 动态生成文件名。

    3. gg.handler.name.inactivityRollInterval:GoldenGate 创建文件并使其保持打开状态以进行写入。此属性在指定的不活动期间(无传入事务处理)后关闭文件,然后将其加载到 Oracle 对象存储中。

    4. gg.eventhandler.name.compartmentID:输入区间 OCID。

    5. gg.eventhandler.name.bucketMappingTemplate:输入对象存储存储桶名称。

    了解有关 File Writer HandlerOCI Event Handler configuration 属性的更多信息。

    注:您还可以根据需要添加可插入格式化程序。有关更多信息,请参见 Pluggable Formatters

  8. 选择创建并运行。如果选择创建,则以后可以从“复制”页手动启动复制。

添加复制 (21c)

  1. 在 OCI GoldenGate 部署控制台的“管理服务概览”页上,选择添加复制(加号图标)。

  2. 在“添加复制”页上,选择复制类型,然后选择下一步

    复制的类型包括:

    • 经典复制

    • 协调的复制

  3. 在“复制选项”页面上,填写以下字段,然后选择下一步

    1. 在“Process Name(进程名称)”中,输入复制进程的名称。

    2. (可选)在“描述”中,输入简短描述以将此处理与其他处理区分开来。

    3. 对于“线索名称”,请输入两个字符的线索名称。

    4. 对于“目标”,从下拉列表中选择 Oracle 对象存储

    5. 对于 OCI 的可用别名,请从下拉列表中选择您的别名。

  4. 在“参数文件”页上,根据需要添加和配置复制参数,然后选择下一步

    table source.table1;

    注:

    默认情况下,GoldenGate 使用格林威治标准时间 (GMT)。使用 SETENV 覆盖提取的默认设置。此更改仅适用于“提取”处理,不适用于部署。

    setenv (TZ="US/Eastern")
    setenv (TZ="GMT+5")
  5. 在“属性文件”页上,根据需要配置文件处理程序和 OCI 事件处理程序属性,然后选择下一步。要考虑修改的一些属性包括:

    1. gg.handler.name.format:选择如何设置输出数据的格式。可用的选项包括:

      • delimitedtext

      • json

      • json_row

      • xml

      • avro_row

      • avro_op

      • avro_row_ocf

      • avro_op_ocf

      对于 parquet,必须应用其他属性。有关详细信息,请参阅用于 Oracle 对象存储的参数

    2. gg.handler.name.fileNameMappingTemplate:使用 Template Keywords 动态生成文件名。

    3. gg.handler.name.inactivityRollInterval:GoldenGate 创建文件并使其保持打开状态以进行写入。此属性在指定的不活动期间(无传入事务处理)后关闭文件,然后将其加载到 Oracle 对象存储中。

    4. gg.eventhandler.name.compartmentID:输入区间 OCID。

    5. gg.eventhandler.name.bucketMappingTemplate:输入对象存储存储桶名称。

    了解有关 File Writer HandlerOCI Event Handler 属性的更多信息。

    注:您还可以根据需要添加可插入格式化程序。有关更多信息,请参见 Using the Pluggable Formatters

  6. 选择添加并运行

您将返回到“Administration Service Overview(管理服务概览)”页,在此页上可以监视复制进程的状态。选择处理名称以查看其详细信息并访问报告。

Oracle 对象存储连接的已知问题

使用资源主用户时出现 Oracle 对象存储复制错误

如果 Oracle 对象存储连接使用资源主用户验证,则复制将失败,并显示以下错误:

ERROR 2025-06-12 14:48:16.000489 [main] - An exception has occurred: java.lang.NullPointerException: Cannot invoke "String.startsWith(String)" because "path" is null java.lang.NullPointerException: Cannot invoke "String.startsWith(String)" because "path" is null

解决方法:要解决此问题,请编辑连接,然后选择其他验证方法。

Oracle 对象存储连接中的用户 OCID 不匹配(仅限联合用户)

如果联合用户在创建 Oracle 对象存储连接时选择“使用当前用户”,则其 OCID 与系统选取的 OCID 不匹配。

解决方法:创建 Oracle 对象存储连接时,请确保选择指定其他用户,然后输入联合用户的 OCID。

要查找用户 OCID,请在 Oracle Cloud 控制台全局标题中选择概要文件,然后选择用户名。在“用户详细信息”页的“用户信息”下,为 OCID 选择显示