OCI 中的已知问题 GoldenGate
一般
了解适用于整个服务的一般已知问题以及如何解决这些问题。
使用与密钥的连接时遇到错误
- oggbigdata:23.8.0.0.0_250428.1314_1246
- oggbigdata:23.8.0.0.0_250523.1247_1247
- oggbigdata:23.8.0.0.0_250523.1247_1253
- oggbigdata:21.18.0.0.0_250416.1417_1253
- oggmysql:23.8.0.0.0_250412.2241_1246
- oggmysql:23.8.0.0.0_250412.2241_1237
- oggmysql:23.8.0.0.0_250412.2241_12211
- oggpostgresql:23.8.0.0.0_250517.1921_1248
- oggpostgresql:23.8.0.0.0_250412.2241_1246
- oggpostgresql:23.8.0.0.0_250412.2241_1237
- oggdb2zos:23.8.0.0.0_250412.2241_1253
- oggdb2zos:23.8.0.0.0_250412.2241_1246
- oggdb2i:23.8.0.0.0_250524.0756_1253
- oggdb2i:23.8.0.0.0_250524.0756_1246
解决方法:
- 在“创建连接”页中,展开该页底部的高级选项。
- 在“高级”选项下,展开设置。
- 取消选择 Use secrets in vault 。
- 完成创建没有 Vault 密钥的连接。
或者,如果您的连接中没有“高级”选项,请尝试使用早期版本的部署。
将 21.x 部署升级到 21.17 后,分发和接收方路径可能会失败
从 Oracle GoldenGate 版本 21.17 和 23ai 开始,路径使用默认的保留域名 "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 部署控制台中,编辑每个路径并将域名更改为 "Network",然后重新启动该路径。要进行验证,请在“配置”页的“身份证明存储”部分中检查路径验证用户的域。
如果希望使用 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
解决方法:
- 将 JKS 信任库和密钥库转换为 PKCS12。
- 对于密钥库,它应提示输入口令。Keytool 是 JDK 中的一个实用程序。
keytool -importkeystore -srckeystore [MY_KEYSTORE.jks] -destkeystore [MY_KEYSTORE.p12] -srcstoretype JKS -deststoretype PKCS12 -deststorepass [PASSWORD_PKCS12]
- 对于 truststore,它应提示输入口令。
keytool -importkeystore -srckeystore [MY_TRUSTSTORE.jks] -destkeystore [MY_TRUSTSTORE.p12] -srcstoretype JKS -deststoretype PKCS12 -deststorepass [PASSWORD_PKCS12]
- 对于密钥库,它应提示输入口令。Keytool 是 JDK 中的一个实用程序。
- 在 Kafka 生成器属性文件中,设置以下内容:
ssl.truststore.type=PKCS12 ssl.keystore.type=PKCS12
从 21.15 或 23.x 构建回退到 21.14 期间遇到的问题
尝试将 21.15 或 23.x 构建回退到:
- Oracle (21.14.0.0.0_240525)
- Big Data (21.14.0.0_0_240515)
- MySQL (21.14.0.0_240404)
- MSSQL (21.14.0.0.0_240404)
您可能会遇到以下问题之一:
- 由于新的 wallet 加密功能引入了 21.15 以后缺少连接/身份证明问题。
解决方法:必须取消分配和重新分配到部署的现有连接,并重新创建任何正在使用的分发或接收器路径所需的缺少用户。
- 由于性能度量服务在 23.x 到 21.14 的回退中出现问题,服务管理器无法启动。如果您遇到此问题,请与 Oracle 技术支持联系。
- Oracle GoldenGate 进程失败,出现错误 “OGG-02431 在检查点文件中找到的记录标头无效”。
解决方法:将部署升级到该系列中可用的最新 21.14 构建。如果问题仍然存在,请与 Oracle 技术支持联系。
尝试使用 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 地址添加到您的身份域应用程序。要进行此更改,您必须是分配给应用程序的用户组的一部分。
- 在 Oracle Cloud 导航菜单中,选择身份和安全,然后在“身份”下面,单击域。
- 从“域”列表中选择域。
- 从域的身份域资源菜单中,选择 Oracle Cloud Services 。
- 从 Oracle Cloud Services 列表中选择您的应用程序。例如, GGS INFRA Application for Deployment Id:
<deployment OCID>
。 - 在 OAuth 配置下的应用程序页上,单击编辑 OAuth 配置。
- 对于重定向 URL ,输入部署的控制台 URL,其中部署的 IP 代替域。例如:
https://<deployment-ip>/services/adminsrvr/v2/authorization
。 - 保存所做更改。
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 的用户,请注意,Service Manager 未在 OCI GoldenGate 中公开,对 Service Manager 的任何调用都无法返回。
AdminClient: Unable to negotiate with <ip-address> port 22: no matching host key type found.
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
解决办法:完成以下步骤:
- 打开新的 Cloud Shell 会话。
- 使用以下命令创建文件:
cat .ssh/config
- 将以下内容输入到
.ssh/config
文件中,然后将其保存:HostkeyAlgorithms ssh-rsa,ssh-ed25519 PubkeyAcceptedKeyTypes ssh-ed25519,ssh-rsa
- 如果存在现有
.ssh/known_hosts
文件,请将其删除。 - 关闭 Cloud Shell 会话。
- 单击部署详细信息页上的启动管理客户端。
连接
了解与连接相关的已知问题以及如何解决这些问题。
使用资源主用户时出现 OCI 对象存储复制错误
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 中的 Apache Iceberg 连接问题 GoldenGate
如果您在使用 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 连接时选择专用。
OCI GoldenGate MongoDB 连接不支持 mongdb+srv 连接字符串。
解决方法:使用 MongoDB 连接字符串。
- 在 MongoDB Atlas 中,单击连接。
- 选择驱动程序。
- 选择 Java 。
- 对于版本,选择 3.4 或更高版本。
- 可以使用提供的 mongodb 字符串。例如:
mongodb://<user_name>:<db_password>@cluster0-shard-00-00.abc.mongodb.net:27017,cluster0-shard-00-01.abc.mongodb.net:27017,cluster0-shard-00-02.abc.mongodb.net:27017/?ssl=true&replicaSet=atlas-3grqh1-shard-0&authSource=admin&retryWrites=true&w=majority&appName=Cluster0
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
然后,您可以使用以下步骤作为临时解决方法。
解决方法:
- 连接到 Cloud Shell。
- 使用以下 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>
- 将连接分配给您的部署。
- 为 Amazon S3 添加并运行 Replicat。
或者,如果您不希望使用公共访问,请将 Amazon S3 连接的存储桶配置为使用 AWS VPC Endpoints。要使 OCI GoldenGate 使用 VPC Endpoints 访问 S3 存储桶,还必须在 VCN 和 AWS VPC 之间配置 IPsec VPN。
要设置 Amazon S3 的端点,请将 gg.eventhandler.s3.url
属性添加到复制属性文件,并为专用连接提供端点。
MongoDB 测试连接出现问题
将 Test connection 与 MongoDB 连接一起使用时可能会遇到错误。您可以在 OCI GoldenGate 部署控制台中忽略此错误并测试 MongoDB 连接。在部署控制台中,打开 Administration Service 的导航菜单,单击配置。您的 MongoDB 连接应列为身份证明,您可以在其中单击连接到 <alias> 以测试连接。
使用 mTLS 验证的自治数据库所需的操作
轮换 Autonomous Database wallet 时,必须刷新到此数据库的 OCI GoldenGate 连接以检索最新的 wallet 信息。
有关更多信息,请参见My Oracle Support (MOS) 文档 2911553.1 。
要刷新 Autonomous Database 连接,请执行以下操作:编辑并保存到 Autonomous Database(Autonomous Transaction Processing 或 Autonomous Data Warehouse)的连接。保存连接会自动下载并刷新 wallet。不需要对连接进行其他更改。
要验证:
- 为使用 Autonomous Database 连接的部署启动部署控制台。
- 在部署控制台中,打开导航菜单,然后单击配置。
- 在“身份证明”屏幕上,观察 Autonomous 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)))
在 OCI GoldenGate 部署控制台中创建 Extract 时,包含 '@' 符号的 MySQL 数据库用户名不会显示在 Credential Alias 列表中
对于 MySQL 数据库,在 OCI GoldenGate 部署控制台中创建 Extracts 时,Credential Alias 列表中将忽略包含 @ 符号的用户名。
解决方法:从列表中选择其他别名,然后在下一个屏幕上手动更新 Parameter File。
网络超时影响使用专用端点的数据库连接。
如果您使用专用端点连接到数据库,则在启动或停止 Extract 进程时可能会遇到网络超时。
解决办法:您可以执行以下操作之一:
- 应用部署详细信息页中的最新补丁程序。在 GoldenGate 下的部署信息部分中,对于版本,单击升级。
- 如果此时无法应用最新补丁程序,则可以更新连接字符串以包括
EXPIRE_TIME=1
。默认情况下,Oracle GoldenGate 中可能有一个简单的连接字符串。此连接字符串需要在 Oracle GoldenGate 身份证明中更新为长连接字符串,如下所示:<username>@//<hostname>:1521/<service_name> <username> @(DESCRIPTION = (EXPIRE_TIME=1)(ADDRESS_LIST = (ADDRESS = (COMMUNITY = tcp)(PROTOCOL = TCP)(Host = <hostname>)(Port = 1521))) (CONNECT_DATA = (SERVICE_NAME = <service_name>)))
SCAN 代理不支持 TLS
虽然 OCI GoldenGate 支持 Oracle 单客户机访问名称 (Single Client Access Name,SCAN) 主机和 IP,但 SCAN 代理不支持 TLS。
解决方法:您可以使用 Database Node IP 连接到 RAC database。
OCI 对象存储连接中的用户 OCID 不匹配(仅限联合用户)
如果联合用户选择在创建 OCI 对象存储连接时使用当前用户,则其 OCID 与系统选取的 OCID 不匹配。
解决方法:创建 OCI 对象存储连接时,请确保选择指定其他用户,然后输入联合用户的 OCID。
要查找用户 OCID,请单击 Oracle Cloud 控制台全局标头中的概要信息,然后选择用户名。在“用户详细信息”页的“用户信息”下,单击 OCID 的显示。
部署控制台
部署控制台无法加载
如果输入的最后一部分超过 11 个字符的全限定域名 (FQDN),则部署控制台将无法加载。
解决方法:将 FQDN 的最后一部分保留在 11 个字符以内。
OCI GoldenGate 部署控制台与 Safari Web 浏览器不兼容。
使用 Safari Web 浏览器访问时,Oracle Cloud Infrastructure GoldenGate 部署控制台将无法正确显示。
解决方法:改用 Chrome 或 FireFox 浏览器。
连接到身份证明可能需要几分钟时间
尝试连接到身份证明时,在部署控制台的“配置”屏幕中,成功连接可能需要几分钟时间。刷新屏幕只会增加连接过程的时间。
解决方法:这是在 GoldenGate 构建版本 oggoracle:21.8.0.0.0_221119.1258_663 中解决的已知问题。
GoldenGate 进程
了解与 GoldenGate 进程相关的已知问题以及如何解决这些问题。
MongoDB、DocumentDB 和 Oracle JSON 集合 TLS 安全协议
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 流处理程序失败,出现以下情况: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 Extract 中的 Trail file 与 BINARY_JSON_FORMAT 结合使用时,Replicats 失败
当 Replicat 在 Extract 参数文件中使用 MongoDB Extract 和 BINARY_JSON_FORMAT 生成的 Trail file 时,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)
解决方法:从 Extract 参数中删除 BINARY_JSON_FORMAT 时,Replicat 将成功运行,并以扩展 JSON 格式表示文档。
启用 GTID 的数据库的远程更改数据捕获 Extracts 失败
ERROR OGG-25192 Trail file '<trail name>' is remote. Only local trail allowed for this extract.
解决方法:在 Change Data Capture Extract 的 "Parameter file" 屏幕上,删除行 TRANLOGOPTIONS ALTLOGDEST REMOTE
。
有关更多信息,请参见 Using Oracle GoldenGate for MySQL 。
要创建 Distribution Paths 以将数据发送到 Oracle Cloud Infrastructure GoldenGate 或从其提取数据,请确保将根证书添加到证书管理或客户端 wallet
要将数据发送到 OCI GoldenGate 或从其提取数据,必须在内部部署的 Receiver Server 或 Marketplace Oracle GoldenGate 上分别创建 Distribution Server 路径或目标启动的路径。还必须将 OCI GoldenGate 根证书或自签名证书添加到 Oracle GoldenGate 证书管理(Oracle GoldenGate 21 c 或更高版本)或客户端 wallet (Oracle GoldenGate 19 c )。这将在 Oracle GoldenGate 和 OCI GoldenGate 部署之间创建可信连接。在 Oracle GoldenGate 和 OCI GoldenGate 之间,Distribution 和 Receiver Server Paths 仅支持 WebSocket 安全 (WSS) 协议。
更改 OCI GoldenGate 根证书将导致本地或 Marketplace Oracle GoldenGate 中 Distribution Server Path 或 Receiver Server 上目标启动的路径失败并生成以下错误:
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 GoldenGate 19 c 用户,请参见 Creating a Distribution Server Path User Certificate 。
- 对于 Oracle GoldenGate 21 c 或更高版本的用户,请参见 Create a Trusted Connection Between Oracle GoldenGate and OCI GoldenGate 。
当前仅支持摘要验证
使用 Oracle Cloud Infrastructure GoldenGate 作为 Distribution Path 目标时,Oracle Cloud Infrastructure GoldenGate 当前不支持基于证书的验证。
解决方法:无。
管道
了解与管道相关的已知问题以及如何解决这些问题。
ZeroETL 镜像管道应用进程失败
Error mapping from ADMIN.DBTOOLS$EXECUTION_HISTORY to <ADB ID>.ADMIN.DBTOOLS$EXECUTION_HISTORY.
解决方法:使用 ADMIN.*
创建排除规则,然后重新启动管道。
如果目标数据库时区文件版本低于源数据库的时区文件版本,则 Oracle Data Pump 将失败
Pipeline 选项 "Copy existing data to target database before start replication"(在开始复制之前将现有数据复制到目标数据库)使用 Oracle Data Pump。如果目标数据库的时区文件版本低于源数据库的时区文件版本,则 Oracle Data Pump 将失败。
解决方法:要解决此问题,必须升级目标数据库的时区版本。请参阅在 Autonomous Database 上管理时区文件更新。