场景描述
数据库1: Oracle19C(暂且命名为orcl1)
数据库2: Oracle10.2.0.2.0(暂且命名为orcl2)
两个数据库安装在不同的服务器
#1.设置数据库host名(orcl2)
#数据库1中tnsnames.ora文件中追加
orcl2 =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = orcl2IP地址)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = orcl2)
)
)
#2.数据1中创建db link
#举例:
create database link DBLink名(对应1步鄹host名)
connect to 远程数据库名 identified by 远程数据库密码
using 创建db连接名;
#设置:
create database link orcl2
connect to XYZ identified by XYZ
using 'orcl2.form';
#3.数据1中测试db link是否连接成功
select * from dual@orcl2.form #成功查询结果为X
实际使用过程中
#数据库1创建packageBoby中, 连接数据库2表A
#数据库1中创建表A同义词带DBlink
create synonym ATable for ZZS.ATable@orcl2.form;
#但是packageBoby一直连接不上数据库2中表A,出现编译错误
#排除DBlink, 两台服务通讯连接等等
#最终锁定在数据库版本问题
解决问题
将数据库2「10.2.0.2.0」升级为「10.2.0.5.0」
问题解决完成