oracle dblink
--创建 连接
create database link 数据库链路名(dblink)
connect to 数据库用户名 identified by "口令"
using '连接字符串';
create database link 数据库链路名(dblink)
connect to 数据库用户名 identified by "口令"
using '连接字符串';
如果创建全局dblink,必须使用systm或sys用户,在database前加public。
create public database link 数据库链路名(dblink)
connect to 数据库用户名 identified by "口令"
using '连接字符串';
--测试 是否正常
connect to 数据库用户名 identified by "口令"
using '连接字符串';
--测试 是否正常
一般情况下引用数据库链接,可以直接将其放到调用的表名或视图名称后面,中间使用一个 @ 作为分割符:
select * from auth_department@dbLink;
--查看连接
1、select * from dba_db_links;
select owner,object_name from dba_objects where object_type='DATABASE LINK';
2、select * from all_db_links;
select * from auth_department@dbLink;
--查看连接
1、select * from dba_db_links;
select owner,object_name from dba_objects where object_type='DATABASE LINK';
2、select * from all_db_links;
--删除连接
drop database link dbLink;
drop public database link dblink;
如何返回数据库的GLOBAL_NAME?
执行SELECT * FROM GLOBAL_NAME;
如何查看Global_name参数是true还是False?
执行:SQL> show parameter global_name
注意:
1)dblink名必须与远程数据库的全局数据库名(global_name)相同;
2)用户名,口令为远程数据库用户名,口令;
3)主机字符串为本机tnsnames.ora中定义的串;
4)两个同名的数据库间不得建立dblink;
然后,你就可以通过dblink访问远程数据库了。
2)用户名,口令为远程数据库用户名,口令;
3)主机字符串为本机tnsnames.ora中定义的串;
4)两个同名的数据库间不得建立dblink;
然后,你就可以通过dblink访问远程数据库了。
5)建立环境时,要注意关闭两台计算机上的Windows的防火墙,否则,会出现能ping通,但Oracle连接不通的情况。
客户端tnsnames.ora文件中对应的实际连接串。如:
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.100)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = test)
)
)
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.100)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = test)
)
)
host=数据库的ip地址,service_name=数据库的ssid。