分类: WINDOWS
2011-09-01 11:59:44
首先监听器tnsnames.ora这个文件能连接到远程要创建dblink的数据库。
-- 创建dblink MANAGER为远程数据库的用户名 password 为远程数据库的密码, orcl为监听器连好的链接名称
这样就可以连接到 orcl数据库 灵活的取每一张表的数据了
--------------------------------------------------------------------
同一台数据库服务器上两个不同的数据库可以通过共享来实现数据共享。两台不同的数据库服务器无法通过这种方法来实现数据共享,这个时候可以使用database links 。创建全局database links ,则必须使用systm或sys用户,在database前加public
1.两种方式创建
1.1 已经配置本地服务
CREATE DATABASE LINK 数据库链接名 CONNECT TO 用户名 IDENTIFIED BY 密码 USING '本地配置的数据的实例名' ;
1.2 未配置本地服务
create database link linkfwq
connect to fzept identified by neu
using '(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 10.142.202.12)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = fjept)
)
)' ;
两种方法配置dblink是差不多的,第二种方法不受本地配置的数据的实例名的影响。
2 查询远程数据库的数据
SELECT …… FROM 表名@数据库链接名;
查询、删除和插入数据和操作本地的数据库是一样的,只不过表名需要写成“表名@dblink服务器”而已。
_____________________注意____________________________________
db link 的命名和global_names有关,
如果global_names=true(test),那么db link的命名要和远程数据库(prod)的global_name相同;
如果global_names=false(test),那么你可以随便命名db link。
请注意,是创建dblink的数据库的global_names,与远程数据库的global_names无关。