如何在两个 Oracle RDS 实例之间创建数据库 link
How to create a DB link between two Oracle RDS instances
我正在尝试在两个不同 VPC 中的两个 Oracle RDS 实例之间创建数据库 link。
我已经根据 this guide. 创建了对等 VPC 连接、添加了路由并编辑了安全组,但我得到了
"ORA-12154: TNS:could not resolve the connect identifier specified" error when querying using the DB link.
我的数据库link创建SQL如下:
CREATE DATABASE LINK dblink
CONNECT TO myuser IDENTIFIED BY password
USING 'DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=172.10.2.239)(PORT=1521))(CONNECT_DATA=(SID=sid))';
您需要将连接字符串括在括号中:
CREATE DATABASE LINK dblink
CONNECT TO myuser IDENTIFIED BY password
USING '(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=172.10.2.239)(PORT=1521))(CONNECT_DATA=(SID=sid)))';
如果没有起始括号,Oracle 会查找名为 "DESCRIPTION" 的 tnsnames.ora 条目,但找不到,这就是它抛出错误 "could not resolve the connect identifier specified".[=11 的原因=]
我正在尝试在两个不同 VPC 中的两个 Oracle RDS 实例之间创建数据库 link。
我已经根据 this guide. 创建了对等 VPC 连接、添加了路由并编辑了安全组,但我得到了
"ORA-12154: TNS:could not resolve the connect identifier specified" error when querying using the DB link.
我的数据库link创建SQL如下:
CREATE DATABASE LINK dblink
CONNECT TO myuser IDENTIFIED BY password
USING 'DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=172.10.2.239)(PORT=1521))(CONNECT_DATA=(SID=sid))';
您需要将连接字符串括在括号中:
CREATE DATABASE LINK dblink
CONNECT TO myuser IDENTIFIED BY password
USING '(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=172.10.2.239)(PORT=1521))(CONNECT_DATA=(SID=sid)))';
如果没有起始括号,Oracle 会查找名为 "DESCRIPTION" 的 tnsnames.ora 条目,但找不到,这就是它抛出错误 "could not resolve the connect identifier specified".[=11 的原因=]