Oracle DBlink的创建-查看与删除

DBlink常用于在两个Oracle数据库之间相互连接,如手工同步数据时,DBLink是最方便快捷的手段之一。

1、创建DBLink语法:
create public database link <DBLink名称> connect to <被连接库的用户名> identified by <被连接库的密码> using ‘<Oracle客户端工具建立的指向被连接库服务名,即TNSNAME中配置的本地服务名>‘;
public指明所有用户均可使用这个DBlink,如果不指定,则只有创建者才能使用。

2、授权用户具有创建dblink的权限
创建dblink的用户有对应的数据库权限
create public database link 或者create database link
可以使用
grant create public database link, create database link to username;

3、使用本地服务名来创建public dblink

SQL> create public database link link201orcl connect to scott identified by tiger using ‘rhel201‘;

数据库链接已创建。

SQL> select sysdate from [email protected]; --使用dblink连接并查询远程数据库中的系统时间

SYSDATE
--------------
26-4月 -15

SQL>

但这种方式有个缺点就是必须要在服务器建立一个被连接库的服务名,如果不建则会报错:
ORA-12154: TNS: 无法处理服务名
如果直接使用地址来建DBLink,就可以省去配置服务名的麻烦了:

4、不需要配置本地服务名,在创建dblink时加上description信息

SQL> create public database link link201 connect to scott identified by tiger using
2 ‘(DESCRIPTION =
3 (ADDRESS_LIST =
4 (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.201)(PORT = 1521))
5 )
6 (CONNECT_DATA =
7 (SERVICE_NAME = orcl)
8 )
9 )‘;
Database link created

SQL> select * from [email protected]; --使用dblink连接并查询远程数据库中的表
EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO
----- ---------- --------- ----- ----------- --------- --------- ------
7369 SMITH CLERK 7902 1980/12/17 800.00 999.00 20
7499 ALLEN SALESMAN 7698 1981/2/20 1600.00 300.00 30
......

5、查看dblink
select owner,object_name from dba_objects where object_type=‘DATABASE LINK‘;
或者
select * from dba_db_links;

select owner,object_name from dba_objects where object_type=‘DATABASE LINK‘;
或者
select * from dba_db_links;
SQL> select owner,object_name from dba_objects where object_type=‘DATABASE LINK‘;
OWNER                          OBJECT_NAME
------------------------------ --------------------------------------------------------------------------------
PUBLIC                         LINK201
PUBLIC                         LINK201ORCL

SQL> select * from dba_db_links;

OWNER      DB_LINK      USERNAME   HOST                                               CREATED
---------- ------------ ---------- -------------------------------------------------- --------------------
PUBLIC     LINK201ORCL  SCOTT      rhel201                                            26-4月 -15
PUBLIC     LINK201      SCOTT      (DESCRIPTION =                                     26-4月 -15
                                    (ADDRESS_LIST =
                                    (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.201)
                                   (PORT = 1521))
                                    )
                                    (CONNECT_DATA =
                                    (SERVICE_NAME = orcl)
                                    )
                                   )

5、删除dblink
drop database link linkname;
drop public database link linkname;

时间: 2024-12-04 22:22:00

Oracle DBlink的创建-查看与删除的相关文章

Oracle dblink的创建及使用

在工作中遇到的情况简单说下: --首先要赋予用户创建dblink的权限.grant resource to ods_nwsc;grant create database link to ods_nwsc; --在赋予权限的用户下面创建dblink的代码.CREATE database link link_nwscCONNECT TO lcam_sc IDENTIFIED BY lcam_SC_201504USING '(DESCRIPTION = (ADDRESS_LIST = (ADDRESS

2.oracle 12c 创建-访问-关闭-删除PDB

1.创建PDB SQL> select name from v$datafile; NAME -------------------------------------------------------------------------------- /u01/app/oracle/oradata/ora12c/system01.dbf /u01/app/oracle/oradata/ora12c/pdbseed/system01.dbf /u01/app/oracle/oradata/or

JDBC访问Oracle数据库例子源代码,包括创建table,删除table,插入记录,删除记录,查询记录等

package com.cb; public class SMSInfo { public static String ITEMINDEX = "sms_index"; public static String ITEMTO = "sms_to"; public static String ITEMFROM = "sms_from"; public static String ITEMMSG = "sms_msg"; publ

MySQL创建索引、删除索引和查看查索引

1.索引作用 在索引列上,除了上面提到的有序查找之外,数据库利用各种各样的快速定位技术,能够大大提高查询效率.特别是当数据量非常大,查询涉及多个表时,使用索引往往能使查询速度加快成千上万倍. 例如,有3个未索引的表t1.t2.t3,分别只包含列c1.c2.c3,每个表分别含有1000行数据组成,指为1-1000的数值,查找对应值相等行的查询如下所示. SELECT c1,c2,c3 FROM t1,t2,t3 WHERE c1=c2 AND c1=c3 此查询结果应该为1000行,每行包含3个相

[oracle]创建查看 LOCAL INDEX

create index IDX_T_GPS_CPH_local on T_GPS (CPH) local; create index IDX_T_GPS_SJ_local on T_GPS (SJ) local; select * from dba_ind_partitions where index_owner ='GPSV4_HIS' order by partition_name 从结果推看,建立Local索引时如果不指定分区,则每个分区上都建立一个. ----------- http:

LVM逻辑卷-创建、查看、删除

创建LVM流程: 先把磁盘初始化为物理卷(PV),此时磁盘空间就是一个一个PE(默认4MB一个大小)组成:将PV加入VG(卷组)中:从VG中创建LV(逻辑卷),LV是可以创建文件系统使用的!创建文件系统并挂在使用. 虚拟机实验创建LVM: 在虚拟机中添加两块10G硬盘: 下图是切换到root用户后,列出的磁盘信息: 初始化磁盘成物理卷. 创建一个VG,把PV加入其中: 创建逻辑卷,创建后会在/dev/taokittesting/weblvm生成文件! 格式化,创建文件系统 挂载到/mnt下试用:

Oracle用户的创建和删除

1. 创建用户: SQL> create user user01 identified by user01; User created. 但登录提示01045的错误,缺少CREATE SESSION权限. ERROR: ORA-01045: user USER01 lacks CREATE SESSION privilege; logon denied Enter user-name: 此时需要赋予connect权限给用户(原因见(2)),登陆后创建表提示01031错误: SQL> creat

Oracle Gateways 方式创建dblink 连接 SQLSERVER数据库

1. 安装多次 发现在同一个机器上面总出问题,所以建议找一个没有安装oracle的机器上面进行安装gateways 2. 下载oracle gateways 并且解压缩, 下载地址详情见官网. 下载的安装文件: winx64_12201_gateways 安装. 3. 安装注意事项: 组件比较多 安装 设置数据库相关 执行安装完成. 4. 安装完成之后 修改主要的配置文件: 修改目录下下面的 initdg4msql.ora 文件内容自动生成 HS_FDS_CONNECT_INFO=[10.24.

Oracle查看和删除database link

1.查看 select * from dba_db_links; 2.删除 drop database link 连接名称;   备注:sys 用户不能删除其他用户的 db links 忘记Oracle数据库管理员密码的解决办法 如何不用密码以sysdba的身份登陆到oracle? 输入下面命令,进去了 sqlplus / as sysdba 修改密码语句: alter user system identified by system Oracle11g数据库修改sys和system用户的密码和