oracle - 从 AWS DMS 连接到 Oracle DB 的问题
问题描述
我想运行 DMS 任务将数据从本地 Oracle DB 复制到 AWS 上的 Mysql。我已经获得了防火墙访问权限,并且能够从 AWS ec2 实例远程登录到 Oracle 数据库服务器。另外,我可以使用相同的用户名/密码登录数据库,连接字符串来自 sql developer 但是当我在 DMS 上测试我的端点时,它会失败并出现以下错误。
仅供参考,DMS 实例属于我已获得防火墙许可的同一 VPC。
Test Endpoint failed: Application-Status: 1020912, Application-Message: ORA-12545:
Connect failed because target host or object does not exist OCI connection failure.,
Application-Detailed-Message: ORA-12545: Connect failed because target host or object does not exist
OCI connection failure. ORA-12545: Connect failed because target host or object does not exist OCI connection
failure. Command get_owner_list failed when creating the stream component. requested object was not found
in the repository. Failed getting stream handle requested object was not found in the repository.
create_stream_handle failed requested object was not found in the repository.
Getting DB object ('A4NOXXXXXXXXXK2N2U') info from repository failed requested object was not found in
the repository. Command get_owner_list failed when creating the stream component. requested object was not
found in the repository. Failed getting stream handle requested object was not found in the repository.
create_stream_handle failed
我检查了网络和数据库端,似乎没有问题。请建议。
解决方案
上次我也遇到过类似的问题,我假设使用同一个 VPC 创建 DMS 和 Oracle 实例可以保证它们之间的连接。我还假设添加进入规则以打开 DMS 和 Oracle 实例之间的端口也可以,但是它们之间的连接失败了,我找到了两种方法:
第一:创建一个没有公网IP的DMS实例,目的连接通过验证。它第一次工作
第二:通过打开入口允许所有IP地址,实例之间的连接就会成功。
好看!
推荐阅读
- python - 为从网站抓取数据添加的每个项目添加对象
- java - 使用 CBC 和 PKCS7Padding 的 Java AES 加密
- java - Spring Boot 2.1 bean 覆盖与 Primary
- javascript - 如何在键值对数组 JavaScript 中查找最大数
- kotlin - 要求和断言有什么区别?
- javascript - 在 for 循环中访问动态变量名
- python - 自动将所有节点与networkx中的所有其他节点连接起来
- c# - 使用 Web 服务:客户端应用程序:C#
- java - Android Room:FOREIGN KEY 约束失败(Sqlite 代码 787)
- c# - 在 Unity 中制作计时器