oracle 创建dblink访问远程数据库
2016-06-15 10:29
295 查看
查找资料,按照下面步骤配置后,发现还是无法远程连接数据库。可能是我对资料没理解透彻,后来发现另一种方法解决了这个问题。
第一种方法(没有成功):
1)在本地数据库tnsnames.ora文件中配置要访问的目标数据库信息.可以直接修改tnsnames.ora文件,或者使用客户端向导界面配置。
一般将下面的HOST和SERVICE_NAME改为要访问的目标数据库信息就可以了。
test_link2
=
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.123)(PORT = 1521))
)
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = mai)
)
)
2)执行下面sql:
create [public] database link test_link1
connect to scott identified by tiger using 'test_link2';
其中第一个test_link1是将要创建的dblink的名字,
第二个test_link2是tnsnames.ora文件中配置的目标数据库DMDB的连接信息,
scott/tiger是登录到远程数据库的用户名和密码,然后当在本地数据库使用test_link1的dblink访问远程数据库的时候,会使用scott的身份来访问。
权限解释:
CREATE DATABASE LINK(所创建的DBlink只能是创建者自己使用,别的用户都使用不了)
CREATE PUBLIC DATABASE LINK(public表示所创建的dblink所有用户都可以使用)
3)就是在本地获取远程数据库里的数据了。
select * from test_tb@test_link1
第二种方法(成功了):
create
[public] database link test_link1
connect to scott identified by tiger using '192.168.0.123:1521/mai';
select
* from test_tb@test_link1;
使用第二种方法更简单,不用配置tnsnames.ora文件
第一种方法(没有成功):
1)在本地数据库tnsnames.ora文件中配置要访问的目标数据库信息.可以直接修改tnsnames.ora文件,或者使用客户端向导界面配置。
一般将下面的HOST和SERVICE_NAME改为要访问的目标数据库信息就可以了。
test_link2
=
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.123)(PORT = 1521))
)
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = mai)
)
)
2)执行下面sql:
create [public] database link test_link1
connect to scott identified by tiger using 'test_link2';
其中第一个test_link1是将要创建的dblink的名字,
第二个test_link2是tnsnames.ora文件中配置的目标数据库DMDB的连接信息,
scott/tiger是登录到远程数据库的用户名和密码,然后当在本地数据库使用test_link1的dblink访问远程数据库的时候,会使用scott的身份来访问。
权限解释:
CREATE DATABASE LINK(所创建的DBlink只能是创建者自己使用,别的用户都使用不了)
CREATE PUBLIC DATABASE LINK(public表示所创建的dblink所有用户都可以使用)
3)就是在本地获取远程数据库里的数据了。
select * from test_tb@test_link1
第二种方法(成功了):
create
[public] database link test_link1
connect to scott identified by tiger using '192.168.0.123:1521/mai';
select
* from test_tb@test_link1;
使用第二种方法更简单,不用配置tnsnames.ora文件
相关文章推荐
- RHEL7安装oracle软件时报错:could not execute auto check for display colors
- oracle 12c Enterprise Manager Database Express
- oracle在线添加日志组和日志组成员
- C# OracleBulkCopy 批量插入oracle数据库的方法
- 用OracleDataAdapter将DataTable写入Oracle数据库
- oracle教程
- Oracle表空间和数据文件详解(二)
- Oracle表空间和数据文件详解(一)
- C#利用ODP.NET往oracle中高效插入百万数据
- oracle之function
- oracle之type
- Oracle开发之分析函数(Top/Bottom N、First/Last、NTile)
- Oracle开发之分析函数(Rank, Dense_rank, row_number)
- [ORACLE DATAGUARD] switchover的过程
- oracle 数据中文出现乱码 ???
- ORA-01034: ORACLE not available ORA-27101: shared memory realm does not exist Linux Error: 2: No suc
- asp.net 连接oracle 数据库-OracleClient使用
- 免安装Oracle客户端软件-使用pl/sql配置登陆
- Oracle ASMM vs MSMM
- oracle patition 分区和索引