db_link

1、查询

SYSDBA登录, sys登录    SELECT * FROM SYS.link$;

select owner,object_name from dba_objects where object_type=‘DATABASE LINK‘;

select * from all_db_links;  查看创建的DB_LINK

2.创建dblink

前提:创建dblink的用户有对应的数据库权限
create public database link dblinkname

connect to username identified by password
   using ‘(DESCRIPTION =
                  (ADDRESS_LIST =
                     (ADDRESS = (PROTOCOL = TCP)(HOST = database_ip)(PORT = 1521)))
                 (CONNECT_DATA =
               (SERVICE_NAME =servicename)))‘;

如果在create之后不加public,则创建的dblink就不是公共的,就只有创建者可以使用了.

3.使用db link
    例如,在本机数据库上创建了一个scott_rmthost的public dblink(使用远程主机的scott用户连接),则用sqlplus连接到本机数据库,执行select * from [email protected]_rmthot即可以将远程数据库上的scott用户下的emp表中的数据获取到.
    也可以在本地建一个同义词来指向[email protected]_rmthost,这样取值就方便多了.

直接查询:select * from [email protected];在本地创建同义词:create or replace synonym synonymname [email protected]

create or replace synonym synonymname [email protected]
  synonymname是要创建的同义词名称,table为远程目标数据库username下的表名
  然后用同义词查询:select * from synonymname
4.删除

注意:用户有create public database link 或者create database link 权限.

注:有时由于数据库版本的不同,可能造成创建DBLINK失败,原因可能是,密码输入的格式不对,需要加上引号。例“apps”

db_link,布布扣,bubuko.com

时间: 2024-08-07 17:00:48

db_link的相关文章

通过DB_LINK按照分区表抽取数据

DB:11.2.0.3.0OS:oracle-linux 5.7 建表语句:create table YOON.YOON_HIS(  c_id              NUMBER not null,  YOON_code      VARCHAR2(30),  create_time       DATE,  update_time       DATE not null,)partition by range (CREATE_TIME)(  partition PART_01 values

Oracle DB_LINK如何使用

语句,或可通过可视化操作 -- Create database link create database link DBL_TESTconnect to UID identified by PSWusing '(DESCRIPTION =(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.XX.XX)(PORT = XXXX))(CONNECT_DATA =(SERVER = XXX)(SERVICE_NAME = XX)))'; 在建了该  DB_LINK 的

oracle 使用db_link 导入导出小结

客户有一个需求,是将一个库中的某个用户迁移到一台新的oracle服务器上,因数据量较小,并且不涉及版本的升级,所以可以采用创建一个dblink,然后通过这个dblink直接从源库将用户数据导出并导入到新库中. 为了防止现场发生意外,因此先自己搭建一套环境进行测试,环境如下: 源库:192.168.56.100 Abbott  数据库:orcl 连接名:orcl1 导出用户:test 新库:192.168.56.40 ora-ogg 数据库:orcl 连接名:ogg   创建用户:abbott 实

数据泵远程导出(利用db_link)

1.创建directory d1create directory dd1 as '/home/oracle/';2.授权grant read,write on directory d1 to public:3.创建源数据库与本地数据库的联系本地tnsname.ora里添加源端数据库信息4.创建dblink(需要public)create public database link aaaalink connect to system identified by "cpty" USING

Oracle 10g通过创建物化视图实现不同数据库间表级别的数据同步

摘自:http://blog.csdn.net/javaee_sunny/article/details/53439980 目录(?)[-] Oracle 10g 物化视图语法如下 实例演示 主要步骤 在A节点创建原表和物化视图日志 在B节点创建连接A节点的远程链接 在B节点处创建目标表和与目标表名称相同的物化视图 在B节点处刷新物化视图 升级采用存储过程定时任务JOB方式定时刷新物化视图 进一步优化 文章更新记录 参考文章 Oracle 10g 物化视图语法如下: create materia

7数据库逻辑对象管理

创建普通表:(在方案HR中)SYS AS [email protected]>CREATE TABLE HR.GMY(  2  EMP_ID NUMBER,  3  EMP_NAME VARCHAR2(50) NOT NULL,  4  SEX VARCHAR2(2),  5  TITLE VARCHAR2(50),  6  WAGE NUMBER(8,2),  7  IDCARD VARCHAR2(20),  8  DEP_ID NUMBER  9  ); 创建临时表(默认保存在默认临时表空间

expdp 只导出dblink

最近生产数据库要修改生产用户的密码,由于用户密码修改,各个库之间创建的dblink就失效了,需要重建.上生产一看dblink还真不少,而且谁建的都有,改起来比较费劲.于是想到可以使用expdp的方式导出所有的dblink,即可获取dblink的创建语句,然后修改原密码再在库上创建就可以了. 生产环境中的库有两个版本10.2.0.4和11.2.0.3下面分别在10g和11g上做测试 测试10g: SQL> select * from v$version; BANNER --------------

【数据泵】EXPDP导出表结构

[数据泵]EXPDP导出表结构(真实案例) BLOG文档结构图 ? ? ? ? 因工作需要现需要把一个生产库下的元数据(表定义,索引定义,函数定义,包定义,存储过程)导出到测试库上,本来以为很简单的,可是做的过程发现很多的问题,现记录如下,希望有同样需要的朋友不要再走弯路了. ? ? 导读 各位技术爱好者,看完本文后,你可以掌握如下的技能,也可以学到一些其它你所不知道的知识,~O(∩_∩)O~: ① EXPDP和IMPDP如何导出导入元数据,包括表定义,索引定义,函数定义,包定义,存储过程(重点

Linux操作系统上用数据泵导库

1.在Linux上 创建物理目录dp_dir,存放数据库.dmp文件: 用root用户登录,切换到oracle用户,用oralce身份创建物理目录如下: [[email protected] oracle]# su - oracle [[email protected] ~]$ mkdir /home/oracle/dp_dir 将数据库文件备份到 /home/oracle/dp_dir下,方法:可以用WinSCP远程登录主机后,.DMP文件拖拽到目录下,但显示该.DMP文件的所有者是root,