oracle link
2015-06-04 13:18
316 查看
创建dblink一般有两种方式,不过在创建dblink之前用户必须有创建dblink的权限。想知道有关dblink的权限,以sys用户登录到本地数据库: select * from user_sys_privs t where t.privilege like upper('%link%'); 1 SYS CREATE DATABASE LINK NO 2 SYS DROP PUBLIC DATABASE LINK NO 3 SYS CREATE PUBLIC DATABASE LINK NO 可以看出在数据库中dblink有三种权限CREATE DATABASE LINK(所创建的dblink只能是创建者能使用,别的用户使用不了),CREATE PUBLIC DATABASE LINK(public表示所创建的dblink所有用户都可以使用),DROP PUBLIC DATABASE LINK。 在sys用户下,把CREATE PUBLIC DATABASE LINK,DROP PUBLIC DATABASE LINK权限授予给你的用户 grant CREATE PUBLIC DATABASE LINK,DROP PUBLIC DATABASE LINK to scott; 然后以scott用户登录本地数据库 1.创建dblink的第一种方式,是在本地数据库tnsnames.ora文件中配置了要远程访问的数据库。 create public database link to_bylw connect to scott identified by tiger using 'bylw'; 其中to_bylw是你创建的dblink名字,bylw是远程数据库的实例名,scott/tiger是登录到远程数据库的用户/密码。然后在本地数据库中通过dblink访问远程数据库'bylw'中scott.tb_test表,sql语句如下所示 select * from scott.tb_test@to_bylw; 2.创建dblink的第二种方式,是在本地数据库tnsnames.ora文件中没有配置要访问的远程数据库, create database link to_test connect to scott identified by tiger using '(DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.5)(PORT = 1521)) ) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = bylw) ) )'; 第二种是把第一种配置在tnsnames.ora文件中的信息,直接放在创建dblink语句后面。第一种情况tnsnames.ora文件中信息如下: bylw = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.5)(PORT = 1521)) ) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = bylw) ) )
相关文章推荐
- oracle 备份脚本
- oracle数据泵
- spring的ResultSetWrappingSqlRowSet使用rs.getTimestamp取oracle数据库时分秒问题
- oracle存储过程中is和as区别
- Oracle 树操作(select…start with…connect by…prior)
- oracle开发学习
- Oracle学习(18)【DBA向】:分布式数据库
- Oracle中sequence的使用方法
- oracle中的exists 和not exists 用法详解
- ORACLE中查询拥有某字段的表
- Oracle 查看表空间的大小及使用情况sql语句
- Oracle 生成和显示执行计划的方法
- oracle数据导入导出之exp imp
- oracle执行计划详解
- Oracle误删除表数据后的恢复具体解释
- 11g oracle 用户密码过期问题
- Oracle Study之--Oracle 11g RAC添加节点错误
- mysql 添加伪列 如同oracle的rownum
- ORACLE EBS中查看某个Request的Output File
- Oracle学习(17)【DBA向】:管理用户