目前存在一个这样的业务需求,两个不一样实例的ORACLE数据库, 数据库A和数据库B,我须要在A库中查询B库中的业务表 T_TEST_LINK,而且我直接想在A库中使用select * from T_TEST_LINK查询不写 select * from B.T_TEST_LINK@link_to_B的繁琐SQL。sql
第一步:数据库
在A库中建立DB link测试
-- Create database link create database link link_to_B connect to B --B数据库的用户名 IDENTIFIED by "B_password" --B数据库的密码 using '(DESCRIPTION =(ADDRESS_LIST =(ADDRESS =(PROTOCOL = TCP)(HOST = 10.10.xx.xx)(PORT = 1521)))(CONNECT_DATA =(SERVICE_NAME = orcl)))';
建立在A库中使用code
select * from B.T_TEST_LINK@link_to_B测试下class
第二步:select
在A库中建立同义词密码
-- Create the synonym create or replace synonym T_TEST_LINK for B.T_TEST_LINK@LINK_TO_B;
第三步:数据
使用同义词测试查询
select * from T_TEST_LINK