CREATE DATABASE LINK 数据库链接名 CONNECT TO 用户名 IDENTIFIED BY "密码" USING '本地配置的数据的实例名';
1、不使用'本地配置的数据的实例名',而直接用TNSNAMES.ORA中的定义字符串代替,更灵活更好。
CREATE DATABASE LINK 数据库链接名 CONNECT TO 用户名 IDENTIFIED BY "密码" USING '(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 数据库的ip地址)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = 数据库的ssid)
))';
2、数据库参数global_name=true时要求数据库链接名称跟远端数据库名称一样
show parameter global_names
select * from global_name;
3、通过dblink调用存储过程提示“ora-02064不支持分布式操作”
在被调的存储过程中用Oracle自治事务来解决。
oralce自治事务的声明方法为: PRAGMA AUTONOMOUS_TRANSACTION;