OCI GoldenGate 中的已知问题

一般

了解适用于整个服务的一般已知问题以及如何解决这些问题。

升级到 Oracle GoldenGate 23.26.x 后,部署控制台访问可能会遇到 502 错误网关错误或登录后无法列出 GoldenGate 进程

在从早期的标签升级到版本 23.26.x 或对 23.26.x 部署执行停止/启动操作后,Oracle Cloud Infrastructure GoldenGate 23.26 部署可能会变得不健康。

解决方法:为了解决此问题,升级影响了将 Oracle 部署标记为 oggoracle:23.26.1.0.0_260331 的部署。

对于大数据和其他非 Oracle 标签,我们将很快宣布修复。请与技术支持联系,了解临时手动缓解以防止影响。

AdminClient:使用 info profile 命令发出问题

在 AdminClient 中使用 info profile 命令会返回错误 302。

解决方法:使用以下 REST API 命令:

GET https://<deployment URL>/services/adminsrvr/v2/config/types/ogg:managedProcessSettings/values/ogg:managedProcessSettings:Default

21.x 部署升级到 21.17 后,分发路径和接收方路径可能会失败

从 Oracle GoldenGate 版本 21.17 和 26ai 开始,Paths 使用默认保留域名 "Network",因此使用任何其他域名的现有路径将失败,并报告以下错误:

ERROR\| Exception Message: The network connection could not be established: 'OGG-10351' - 'Generic error -1 noticed. Error description - credential store alias not found in domain.'

解决方法:在 OCI GoldenGate 部署控制台中,编辑每个路径并将域名更改为“网络”,然后重新启动路径。要进行验证,请在“配置”页的“身份证明存储”部分中检查路径验证用户的域。

如果您希望使用 Admin Client,请运行以下命令来更新域名。确保替换 <path_name><alias> 占位符:

对于源启动的路径:

ALTER DISTPATH <path_name> TARGET AUTHENTICATION USERIDALIAS <alias> domain
    Network

对于目标启动的路径:

ALTER RECVPATH <path_name> SOURCE AUTHENTICATION USERIDALIAS <alias> domain
    Network

升级到 Oracle GoldenGate 21.17 for Big Data 时出现的问题

使用配置了信任库和/或密钥库连接属性从 Oracle GoldenGate 版本 21.14、21.15 或 21.16(适用于大数据)升级到版本 21.17(适用于信任库和/或密钥库连接属性)的用户失败,并报告了以下错误:

Caused by: oracle.goldengate.util.GGException: An exception occurred when creating the Kafka Producer object.
Caused by: org.apache.kafka.common.KafkaException: Failed to construct kafka producer
Caused by: org.apache.kafka.common.KafkaException: Failed to load SSL  keystore /u02/connections/<connection OCID>/trustStore of type JKS
Caused by: java.io.IOException: keystore password was incorrect

解决方法:

  1. 将 JKS 信任库和密钥库转换为 PKCS12。

    1. 对于密钥库,应提示输入密码。Keytool 是 JDK 中的实用程序。

      keytool -importkeystore -srckeystore [MY_KEYSTORE.jks] -destkeystore [MY_KEYSTORE.p12] -srcstoretype JKS -deststoretype PKCS12 -deststorepass [PASSWORD_PKCS12]
    2. 对于信任库,应提示输入口令。

      keytool -importkeystore -srckeystore [MY_TRUSTSTORE.jks] -destkeystore [MY_TRUSTSTORE.p12] -srcstoretype JKS -deststoretype PKCS12 -deststorepass [PASSWORD_PKCS12]
  2. 在 Kafka 生成器属性文件中,设置以下内容:

    ssl.truststore.type=PKCS12
    ssl.keystore.type=PKCS12

从 21.15 或 23.x 构建回退到 21.14 期间的问题

尝试将 21.15 或 23.x 构建回退到以下构建之一时:

您可能会遇到以下问题之一:

尝试使用 IP 访问启用了 IAM 的部署时出现无效的重定向 URL 错误

尝试使用部署的 IP 地址访问启用了 IAM 的部署时,会遇到以下错误:

{"error":"invalid_redirect_uri","error_description":"Client
        xxxxxxxx1ocioraclecloudcom_APPID requested an invalid redirect URL: https://192.x.x.x/services/adminsrvr/v2/authorization. ECID:
        xxxx"}

解决方法:您可以执行以下操作之一:

选项 1 :将部署 IP 地址添加到身份域应用程序。要进行此更改,您必须是分配给应用程序的用户组的一部分。

  1. 在 Oracle Cloud 导航菜单中,选择身份和安全,然后在“身份”下,选择

  2. 从“Domains(域)”列表中选择您的域。

  3. 从域的“身份域”资源菜单中选择 Oracle Cloud Services

  4. 从 Oracle Cloud Services 列表中选择应用程序。例如, GGS INFRA Application for Deployment Id:<deployment OCID>

  5. 在 OAuth 配置下的应用程序页上,选择编辑 OAuth 配置

  6. 对于重定向 URL ,输入部署的控制台 URL 并输入部署的 IP 代替域。例如:https://<deployment-ip>/services/adminsrvr/v2/authorization

  7. 保存所做更改。

选项 2:在客户机 hosts 文件中添加一个条目以将 127.0.0.1 映射到部署 FQDN(将 <region> 替换为相应的区域)。例如:

127.0.0.1 xx.deployment.goldengate.<region>.oci.oraclecloud.com

无法更新 IAM 部署上的定制证书

该服务禁止更新 FQDN,因为它会影响跨区域访问,并要求更新目标区域中的 IAM 资源。

解决方法:要解决此问题,请创建一个新部署以使用更新的 FQDN。

Oracle GoldenGate REST API 将返回 302 个重定向到索引页

您可以使用 GoldenGate REST API 管理 OCI GoldenGate 部署。对于熟悉 Oracle GoldenGate 的用户,请注意,服务管理器未在 OCI GoldenGate 中公开,并且对服务管理器进行的任何调用都无法返回。

AdminClient:无法协商:未找到匹配的主机密钥类型

在 Cloud Shell 中使用 AdminClient 连接到部署时,可能会遇到以下消息:

FIPS mode initialized.
Unable to negotiate with <ip-address> port 22: no matching host key type found. Their offer: ssh-ed25519
Action completed. Waiting until the work request has entered state: ('SUCCEEDED',)
FIPS mode initialized.
Unable to negotiate with <ip-address> port 22: no matching host key type found. Their offer: ssh-ed25519
Cannot create ssh tunnelnel

解决方法:完成以下步骤:

  1. 打开新的 Cloud Shell 会话。

  2. 使用以下命令创建文件:

    cat .ssh/config
  3. .ssh/config 文件中输入以下内容,然后将其保存:

    HostkeyAlgorithms ssh-rsa,ssh-ed25519
    PubkeyAcceptedKeyTypes ssh-ed25519,ssh-rsa
  4. 如果存在现有的 .ssh/known_hosts 文件,请将其删除。

  5. 关闭 Cloud Shell 会话。

  6. 在部署详细信息页上选择启动管理客户端

连接

探讨与连接相关的已知问题以及如何解决这些问题。

Oracle AI Data Platform:资源主用户验证

Oracle AI Data Platform 连接的资源主用户验证遇到以下错误:

JDBCMDP-00034 Current attempt to connect failed with error: [[JDBC Driver]Could not find private key: /tmp/ogg/ocid1.goldengateconnection.oc1.phx.amaa...lqabqqxq/privateKeyFile].

解决方法:编辑连接并选择其他验证方法,例如使用当前租户和用户指定其他租户和用户

使用与密钥的连接时遇到错误

在以下版本的 OCI GoldenGate 中使用包含密钥和 Vault 的连接时,您可能会遇到连接错误:

解决方法:不使用 OCI Vault 密钥重新创建连接:

  1. 在“创建连接”页中,展开该页底部的高级选项

  2. 在“高级”选项下,展开设置

  3. 取消选择 Use secrets in vault

  4. 选择创建

或者,如果您的连接中没有“高级”选项,请尝试使用早期版本的部署。

使用资源主用户时出现 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

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

OCI GoldenGate 中的 Apache Iceberg 连接出现问题

如果在使用 Apache Iceberg 连接时遇到以下错误,请打开支持请求单,共享详细信息和错误消息:

ERROR 2025-07-08 13:34:09.000481 [main] -  Parameter [awsSecretKey] is missing in the
      connection payload. Parameter [awsSecretKey] is missing in the connection payload.

Amazon S3 和 Google Cloud Storage 连接的 Java.net.UnknownHostException 错误

带有共享端点的 Amazon S3 和 Google Cloud Storage 连接会遇到 Java.net.UnknownHostException 错误。

解决方法:编辑连接并将流量路由方法更改为专用,或者在创建 Amazon S3 和 Google Cloud Storage 连接时选择专用

OCI GoldenGate 中的 Amazon S3 连接出现问题

如果您在使用 Amazon S3 连接时遇到以下错误,请打开支持单,共享详细信息和错误消息。

ERROR 2024-03-04 11:42:31.000505 [TaskEngine_2(FileFinalizeTask)] - Verify S3 bucket
      [ggstest] failed.com.amazonaws.SdkClientException: Unable to execute HTTP request: s3.us-east-2.amazonaws.com

解决方法:

  1. 连接到 Cloud Shell。

  2. 使用以下 CLI 示例创建新的 Amazon S3 连接:

    oci goldengate connection create-amazon-s3-connection --routing-method SHARED_SERVICE_ENDPOINT --display-name <connection_name> --compartment-id <compartment_ocid> --technology-type AMAZON_S3 --access-key-id <aws_access_key> --secret-access-key <aws_secret> --connection-region <amazon_s3_bucket_region>
  3. 将连接分配给您的部署。

  4. 为 Amazon S3 添加并运行复制。

或者,如果您不希望使用公共访问,请将 Amazon S3 连接的存储桶配置为使用 AWS VPC 端点。要使 OCI GoldenGate 使用 VPC 端点访问 S3 存储桶,您还必须在 VCN 和 AWS VPC 之间配置 IPsec VPN。

要设置 Amazon S3 的端点,请将 gg.eventhandler.s3.url 属性添加到 Replicat Properties File,并为专用连接提供端点。

MongoDB 测试连接问题

将 Test 连接与 MongoDB 连接一起使用时可能会遇到错误。您可以在 OCI GoldenGate 部署控制台中忽略此错误并测试 MongoDB 连接。在部署控制台中,打开管理服务的导航菜单,选择配置。您的 MongoDB 连接应列为身份证明,您可以在其中选择 ** 连接到 ** 以测试连接。

使用 mTLS 验证的自治 AI 数据库连接所需的操作

轮换自治 AI 数据库 wallet 时,必须刷新与此数据库的 OCI GoldenGate 连接以检索最新的 wallet 信息。

有关更多信息,请参见 My Oracle Support (MOS) Document 2911553.1

刷新 Autonomous AI Database 连接:编辑并保存与 Autonomous AI Database(Autonomous AI Transaction Processing 或 Autonomous AI Lakehouse)的连接。保存连接会自动下载并刷新 Wallet。不需要对连接进行其他更改。

要验证:

  1. 为使用自治 AI 数据库连接的部署启动部署控制台。

  2. 在部署控制台中,打开导航菜单,然后选择配置

  3. 在“Credentials(身份证明)”屏幕上,观察 Autonomous AI Database 连接字符串。

    刷新 wallet 之前,连接字符串如下所示:

    ggadmin@(DESCRIPTION=(TRANSPORT_CONNECT_TIMEOUT=3)(CONNECT_TIMEOUT=60)(RECV_TIMEOUT=120)(retry_count=20)(retry_delay=3)(address=(protocol=tcps)(port=1522)(host=adb.us-phoenix-1.oraclecloud.com))(CONNECT_DATA=(COLOCATION_TAG=ogginstance)(FAILOVER_MODE=(TYPE=SESSION)(METHOD=BASIC)(OVERRIDE=TRUE))(service_name=<adb-servicename>_low.adb.oraclecloud.com))(security=(MY_WALLET_DIRECTORY="/u02/connections/ocid1.goldengateconnection.oc1.phx.<ocid>/wallet")(SSL_SERVER_DN_MATCH=TRUE)(ssl_server_cert_dn="CN=adwc.uscom-east-1.oraclecloud.com, OU=Oracle BMCS US, O=Oracle Corporation, L=Redwood City, ST=California, C=US")))

    刷新 wallet 后,连接字符串将更新为如下所示:

    ggadmin@(DESCRIPTION=(TRANSPORT_CONNECT_TIMEOUT=3)(CONNECT_TIMEOUT=60)(RECV_TIMEOUT=120)(retry_count=20)(retry_delay=3)(address=(protocol=tcps)(port=1522)(host=adb.us-phoenix-1.oraclecloud.com))(CONNECT_DATA=(COLOCATION_TAG=ogginstance)(FAILOVER_MODE=(TYPE=SESSION)(METHOD=BASIC)(OVERRIDE=TRUE))(service_name=<adb-servicename>_low.adb.oraclecloud.com))(security=(MY_WALLET_DIRECTORY="/u02/connections/ocid1.goldengateconnection.oc1.phx.<ocid>/wallet")(SSL_SERVER_DN_MATCH=TRUE)(ssl_server_dn_match=yes)))

MySQL 数据库未显示在“身份证明别名”列表中

在 OCI GoldenGate 部署控制台中创建提取时,包含 '@' 符号的 MySQL 数据库用户名不会显示在“身份证明别名”列表中。

解决方法:从列表中选择其他别名,然后在下一个屏幕上手动更新参数文件。

网络超时会影响使用专用端点的数据库连接

如果您使用专用端点连接到数据库,则在启动或停止提取进程时可能会遇到网络超时。

解决方法:您可以执行以下操作之一:

SCAN 代理不支持 TLS

虽然 OCI GoldenGate 支持 Oracle Single Client Access Name (SCAN) 主机和 IP,但 SCAN 代理不支持 TLS。

解决方法:可以使用数据库节点 IP 连接到 RAC 数据库。

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

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

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

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

部署控制台

了解与 OCI GoldenGate 部署控制台相关的已知问题。

无法加载部署控制台

如果输入最后部分超过 11 个字符的全限定域名 (FQDN),部署控制台将无法加载。

解决方法:将 FQDN 的最后部分保留在 11 个字符以内。

OCI GoldenGate 部署控制台与 Safari Web 浏览器不兼容

使用 Safari Web 浏览器访问时,Oracle Cloud Infrastructure GoldenGate 部署控制台将无法正确显示。

解决方法:改用 Chrome 或 FireFox 浏览器。

连接到身份证明可能需要几分钟时间

尝试连接到身份证明时,在部署控制台的 "Configuration"(配置)屏幕中,可能需要几分钟时间才能成功连接。刷新屏幕只会给连接过程增加时间。

解决方法:这是在 GoldenGate 构建版本 oggoracle:21.8.0.0_221119.1258_663 中解决的已知问题。

GoldenGate 进程

了解与 GoldenGate 流程相关的已知问题以及如何解决这些问题。

MongoDB、DocumentDB 和 Oracle JSON Collection TLS 安全协议

如果 MongoDB Replicat、DocumentDB Replicat 或 Oracle JSON Collection 连接失败,则报告文件中出现以下错误:

Error: Caused by: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target

解决方法:将以下属性添加到您的属性文件,使用您的连接 OCID 更新 <connection_ocid> 并保持其余属性不变。

jvm.bootoptions=-Djavax.net.ssl.trustStore=/u02/connections/<connection_ocid>/truststore.pkcs12 -Djavax.net.ssl.trustStorePassword=Welcome123

错误 37518857:OGGDAA GGS Snowflake 流处理复制错误

Snowflake Streaming 处理程序失败:Exception: java.lang.StackOverflowError thrown from the UncaughtExceptionHandler in thread "process reaper"

解决方法:将以下内容添加到复制属性文件:

jvm.bootoptions= -Djdk.lang.processReaperUseDefaultStackSize=true

OCI GoldenGate 部署控制台无法显示定制/非默认命名的放弃文件

默认情况下,放弃文件遵循命名约定 <process-name>.dsc。您可以查看 OCI GoldenGate 部署控制台中的所有放弃文件,除非您重命名这些文件。部署控制台不显示定制的命名放弃文件。

解决方法:使用部署详细信息页上的收集诊断工具来访问放弃文件。

将 MongoDB 提取中的线索文件与 BINARY_JSON_FORMAT 配合使用时,复制失败

当 Replicat 使用从 Extract 参数文件中包含 BINARY_JSON_FORMAT 的 MongoDB Extract 生成的 Trail 文件时,Replicat 将失败并显示以下错误:

ERROR 2023-08-04 17:13:13.000421 [main] - Unable to decode column 0 : Input length = 1
java.nio.charset.MalformedInputException: Input length = 1 at
java.nio.charset.CoderResult.throwException(CoderResult.java:281) ~[?:1.8.0_311]at java.nio.charset.CharsetDecoder.decode(CharsetDecoder.java:816) ~[?:1.8.0_311] at
oracle.goldengate.datasource.UserExitDataSource.createColumnValue(UserExitDataSource.java:1106)
[ggdbutil-21.9.0.0.3.001.jar:21.9.0.0.3.001] Exception in thread "main"
oracle.goldengate.util.GGException: Unable to decode column 0 : Input length = 1 at
oracle.goldengate.datasource.UserExitDataSource.createColumnValue(UserExitDataSource.java:1203)

解决方法:从提取参数中删除 BINARY_JSON_FORMAT 时,复制将成功运行,文档将以扩展 JSON 格式表示。

启用 GTID 的数据库的远程更改数据捕获提取失败

在为使用全局事务处理标识符 (Global Transaction Identifier,GTID) 的 MySQL 数据库创建启用了“远程”选项的“更改数据捕获提取”处理时,提取处理将失败,并报告以下错误:

ERROR   OGG-25192  Trail file '<trail name>' is remote. Only local trail allowed for this extract.

解决方法:在“更改数据捕获提取”的“参数文件”屏幕上,删除行 TRANLOGOPTIONS ALTLOGDEST REMOTE

有关详细信息,请参阅使用 Oracle GoldenGate for MySQL

分发路径:将根证书添加到证书管理或客户端 Wallet

要将数据发送到 OCI GoldenGate 或从 OCI GoldenGate 中提取数据,您必须分别在本地或市场 Oracle GoldenGate 中的接收器服务器上创建分发服务器路径或目标启动路径。您还必须将 OCI GoldenGate 根证书或自签名证书添加到 Oracle GoldenGate 证书管理(Oracle GoldenGate 21 c 或更高版本)或客户端 wallet (Oracle GoldenGate 19 c )。这将在 Oracle GoldenGate 和 OCI GoldenGate 部署之间创建可信连接。Oracle GoldenGate 与 OCI GoldenGate 之间的分发和接收方服务器路径仅支持 WebSocket 安全 (WSS) 协议。

OCI GoldenGate 根证书的更改将导致本地或市场 Oracle GoldenGate 中接收器服务器上的分发服务器路径或目标启动路径失败,并生成以下错误:

ERROR   OGG-10390  Oracle GoldenGate Receiver Service:  Generic error -1 noticed for endpoint
      wss://<deployment URL>:443/services/v2/sources?trail=<trail name>. Error description - SSL
      connection unexpectedly closed.

解决方法:要修复此问题,请更新客户端 wallet 或 Service Manager 的“证书管理”屏幕中的证书,以使用 OCI GoldenGate 部署控制台根证书。在某些情况下,如果 OCI GoldenGate 部署的证书不是由根证书直接签名,而是由中间证书(例如)签名,则可能还需要添加中间 CA 证书。

了解详细信息:

当前仅支持摘要验证

将 Oracle Cloud Infrastructure GoldenGate 用作分发路径目标时,Oracle Cloud Infrastructure GoldenGate 当前不支持基于证书的身份验证。

解决方法:无。

GoldenGate @ Oracle AI Database@Azure

资源锚定点暂挂或失败

确认您的 Azure 账户在目标资源组中具有“贡献者”角色,并且 Oracle AI Database@Azure 资源提供程序是在“Azure”、“订阅”和“资源提供程序”下注册的。

网络锚点失败,出现子网委派错误

在创建网络锚之前,必须将子网委派给 Oracle AI Database@Azure。在 Azure 门户中,依次选择“Virtual Networks(虚拟网络)”、“Subnets(子网)”和“Delegation(委派)”,并确认设置了正确的委派。

创建资源锚点后 OCI 区间不可见

最多等待五分钟进行传播。如果仍未显示,请确认资源锚点在 Azure 门户中显示“活动”。如果显示“Failed(失败)”,请将其删除并重新创建。

odbaa-goldengate-administrators 组不存在

您的租户可能在 2025 年 10 月 7 日之前预配。运行步骤 3 中的 Cloud Shell 自动化脚本,一步创建组和策略。

创建部署时遇到的常见问题

如果动态组 goldengate-deployments 未正确应用,则您可能在创建部署期间遇到以下一个或多个问题:

部署被授权错误阻止

确认动态组 goldengate-deployments 已存在。在 Oracle Cloud 导航菜单中,选择“Identity & Security(身份和安全)”、“Dynamic Groups(动态组)”,然后检查其匹配规则是否正确。验证授予组访问权限以管理密钥系列、 Vault 和密钥的策略是否已限定到正确的区间。

部署停滞在创建状态或失败

在部署详细信息页面上,切换到“工作请求”选项卡并查看有关错误的消息。常见起因包括:

部署在 Azure 门户中不可见

创建期间选择了 ORACLEDBATAZURE 之外的订阅。删除部署并使用正确的订阅重新创建部署。

纯文本密码被拒绝

密码必须至少为 8 个字符,并且必须包含一个大写字母、一个小写字母、一个数字和一个特殊字母。不能包含用户名。

Vault 密钥不可访问

确认密钥状态为“Active(活动)”。在 Oracle Cloud 导航菜单中,依次选择“Identity & Security(身份和安全)”和“Secret Management(密钥管理)”。无法使用待删除的密钥。

连接无法访问数据库

确认所需的数据库端口在网络锚点映射子网上的 Azure NSG 和 OCI 安全列表中均已打开。如果使用主机名,请验证是否根据在步骤 2 的任务 1 中链接的网络锚点 DNS 解析文档配置了 DNS 解析。

数据转换

Data Transforms 部署不会备份通用连接

分配给数据转换部署的一般连接不包括在备份过程中。

还原的数据转换部署将删除增量数据集

在恢复数据转换部署期间和之后创建的数据集将丢失。

管道

探讨与管道相关的已知问题以及如何解决这些问题。

当前不支持启用了 Autonomous Data Guard 的 Autonomous AI Database 连接

OCI GoldenGate 管道当前不支持启用了 Autonomous Data Guard 的 Autonomous AI Database 连接。

解决方法:关闭 Autonomous Data Guard (ADG) 或使用其他 Autonomous AI Database。如果关闭 ADG 以更新 OCI GoldenGate 使用的连接字符串,请刷新连接。

如果目标数据库时区文件版本低于源数据库,则 Oracle Data Pump 将失败

Pipeline 选项“在开始复制之前将现有数据复制到目标数据库”使用 Oracle Data Pump。如果目标数据库的时区文件版本低于源数据库,则 Oracle Data Pump 将失败。

解决方法:要解决此问题,必须升级目标数据库的时区版本。请参阅管理自治 AI 数据库上的时区文件更新