1、连接本地scott用户查看拥有的表
[oracle@ORADG ~]$ sqlplus scott/tiger
SQL> select * from tab;
TNAME                                   TABTYPE  CLUSTERID
------------------------------ ------- ----------
BONUS                                   TABLE
DEPT                                       TABLE
EMP                                        TABLE
MLOG$_EMP                          TABLE
RUPD$_EMP                           TABLE
SALGRADE                             TABLE
TEST                                       TABLE
 
2、连接远程计算机orcl实例的scott用户,查看用户表,测试可以连通
[oracle@ORADG ~]$ sqlplus scott/tiger@192.168.56.30:1521/orcl
SQL> select * from tab;
 
TNAME                                  TABTYPE  CLUSTERID
------------------------------ ------- ----------
BONUS                                 TABLE
DEPT                                     TABLE
EMP                                      TABLE
SALGRADE                            TABLE
USER_DATA                          TABLE
 
3、修改host记录,可以解析rac-scan的计算机名
[root@ORADG ~]# vi /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.56.20   ORADG
192.168.56.30   rac-scan
 
4、修改tnsnames.ora文件,添加如下一行,让本机可以用rac连通远程服务器
[oracle@ORADG ~]$ cd /u01/app/oracle/product/11.2.0/db_1/network/admin/
[oracle@ORADG admin]$ vi tnsnames.ora
RAC =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.56.30)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVICE_NAME = orcl)
    )
  )
 
 
5、修改完毕后进行tnsping,检车能否tnsping通
[oracle@ORADG admin]$ tnsping RAC
Used TNSNAMES adapter to resolve the alias
Attempting to contact (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.56.30)(PORT = 1521))) (CONNECT_DATA = (SERVICE_NAME = orcl)))
OK (10 msec)
 
6、查看test用户下拥有的表
[oracle@ORADG admin]$ sqlplus test/test
SQL> select * from tab;
TNAME                          TABTYPE  CLUSTERID
------------------------------ ------- ----------
EMPF                           TABLE
EMPF1                          TABLE
EMPU1                          TABLE
EMPU2                          TABLE
USLOG$_EMPU1                   TABLE
USLOG$_EMPU2                   TABLE
 
 
7、授予test用户有创建dblink权限
SQL> conn / as sysdba
SQL> grant create database link to test;
 
8、用test用户创建dblink,连接scott用户,语法如下
SQL> conn test/test
SQL> create database link RAC connect to scott identified by tiger using 'RAC';
 
9、检查以RAC命名的dblink是否有效,检查可以访问远程的scott用户下的emp表
SQL> desc emp@RAC
 Name                                                      Null?    Type
 ----------------------------------------- -------- ----------------------------
 EMPNO                                                 NOT NULL NUMBER(4)
 ENAME                                                  VARCHAR2(10)
 JOB                                                        VARCHAR2(9)
 MGR                                                      NUMBER(4)
 HIREDATE                                              DATE
 SAL                                                       NUMBER(7,2)
 COMM                                                  NUMBER(7,2)
 DEPTNO                                                NUMBER(2)
 
10、通过dblink更改scott用户的emp表,然后在远程的scott用户下的emp表数据发生了变化
SQL> select sal from emp@rac where deptno=10;
       SAL
----------
      2450
      5000
      1300
 
SQL> /
 
       SAL
----------
      3450
      6000
      2300
 
11、授予test用户有创建同义词的权限
SQL> conn / as sysdba
SQL> grant create synonym to test;
 
 
12、为test用户创建同义词
SQL> conn test/test
SQL> create synonym emp for emp@rac;
SQL> create synonym dept for dept@rac;
SQL> create synonym salgrade fro salgrade@rac;
 
13、可以看到多了几张表,其实为同义词
SQL> select * from tab;
 
TNAME                                TABTYPE  CLUSTERID
------------------------------ ------- ----------
DEPT                                 SYNONYM
EMP                                  SYNONYM
EMPF                                TABLE
EMPF1                              TABLE
EMPU1                             TABLE
EMPU2                             TABLE
SALGRADE                       SYNONYM
USLOG$_EMPU1              TABLE
USLOG$_EMPU2              TABLE
 
14、使用同义词可以进行对应的查询,该查询是通过dblink远程访问rac的scott用户
SQL> select * from emp where deptno=10;
 
     EMPNO ENAME      JOB              MGR HIREDATE         SAL       COMM     DEPTNO
---------- ---------- --------- ---------- --------- ---------- ---------- ----------
      7782 CLARK      MANAGER         7839 09-JUN-81       2500                    10
      7839 KING       PRESIDENT                 17-NOV-81       5000                    10
      7934 MILLER     CLERK                7782 23-JAN-82       1300                    10
 
 
15、同样也可以进行数据更改
SQL> update emp set sal=sal-1 where deptno=10;
SQL> commit;
SQL> select * from emp where deptno=10;
 
     EMPNO ENAME      JOB              MGR HIREDATE         SAL       COMM     DEPTNO
---------- ---------- --------- ---------- --------- ---------- ---------- ----------
      7782 CLARK      MANAGER         7839 09-JUN-81       2449                    10
      7839 KING       PRESIDENT                 17-NOV-81       4999                    10
      7934 MILLER     CLERK                7782 23-JAN-82       1299                    10
 
16、创建word用户并授权
SQL> conn / as sysdba
SQL> create user word identified by oracle default tablespace users;
SQL> grant connect,resource to word;
 
 
17、用word用户可以将远程的数据库用户下的表直接拷贝过来
SQL> conn word/oracle
SQL> copy from scott/tiger@rac-scan:1521/orcl to word/oracle@orcl_dg replace emp using select * from emp;
 
Array fetch/bind size is 15. (arraysize is 15)
Will commit when done. (copycommit is 0)
Maximum long size is 80. (long is 80)
Table EMP created.
 
   14 rows selected from scott@rac-scan:1521/orcl.
   14 rows inserted into EMP.
   14 rows committed into EMP at word@orcl_dg.
 
SQL> select sal from emp where deptno=10;
       SAL
----------
      2449
      4999
      1299
 
18、可以修改arraysize的参数,使拷贝速度加快
SQL> set arraysize 999
SQL> copy from scott/tiger@rac to word/oracle@orcl_dg create dept using select * from emp;
Array fetch/bind size is 999. (arraysize is 999)
Will commit when done. (copycommit is 0)
Maximum long size is 80. (long is 80)
Table EMP created.
 
   14 rows selected from scott@rac.
   14 rows inserted into EMP.
   14 rows committed into EMP at word@orcl_dg.
 

DBLINK学习的更多相关文章

  1. Oracle学习(五)DBLINK

    一.DBLINK学习 目的:为了解决跨库访问的需求. 场景如下:tnsnames.ora(oracle的库配置文件)下配置了2个库的环境地址,现在要实现跨库访问. PS:DBLINK和是否同一个主机无 ...

  2. Java 学习文章汇总

    目前JAVA可以说是产业界和学术界最热门的语言,许多人都很急切想把JAVA学好. 但学习是需要步骤的,除非像电影中演的那样,能够把需要的专业技巧下载到脑海:主角只花了几秒下载资料,就马上具备飞行员的技 ...

  3. 【oracle】dblink创建

    目的:oracle中跨数据库查询 两台数据库服务器db_A(本地)和db_B(远程192.168.1.100),db_A下用户user_a 需要访问到db_B下user_b的数据 解决:查询得知使用d ...

  4. 学习OCI编程

    转自:http://kulong0105.blog.163.com/blog/static/174406191201162145944574/ 最近公司做的一个项目,要处理海量数据,数据是存放在Ora ...

  5. 作为一个新手的Oracle(DBA)学习笔记【转】

    一.Oracle的使用 1).启动 *DQL:数据查询语言 *DML:数据操作语言 *DDL:数据定义语言 DCL:数据控制语言 TPL:事务处理语言 CCL:指针控制语言 1.登录 Win+R—cm ...

  6. Oracle远程数据建物化视图(materialized)创建简单记录,以及DBLINK的创建

    目的:实现远程数据库访问及其相应表的定时同步 一.远程数据库dblink的创建 select * from dba_db_links; select * from user_sys_privs;--查 ...

  7. Oracle学习总结(8)—— 面向程序员的数据库访问性能优化法则

    特别说明: 1.  本文只是面对数据库应用开发的程序员,不适合专业DBA,DBA在数据库性能优化方面需要了解更多的知识: 2.  本文许多示例及概念是基于Oracle数据库描述,对于其它关系型数据库也 ...

  8. oracle通过dblink连接mysql配置详解(全Windows下)

    关于oracle通过dblink连接mysql,经过了两周的空闲时间研究学习,终于配置好了,真是不容易啊,仔细想想的话,其实也没花多长时间,就是刚开始走了一段弯路,所以把这次的经验分享出来,让大家少走 ...

  9. 从直播编程到直播教育:LiveEdu.tv开启多元化的在线学习直播时代

    2015年9月,一个叫Livecoding.tv的网站在互联网上引起了编程界的注意.缘于Pingwest品玩的一位编辑在上网时无意中发现了这个网站,并写了一篇文章<一个比直播睡觉更奇怪的网站:直 ...

随机推荐

  1. 7个在线学习C++编程的最佳途径

    7个在线学习C++编程的最佳途径 jopen 2012-09-27 15:51:13 • 发布 摘要:C++是一种静态数据类型检查的.支持多重编程范式的通用程序设计语言.它支持过程化程序设计.数据抽象 ...

  2. redis集群搭建手册

    搭建集群需要用到安装后的redis单机版的bin目录,所以我们先搭建redis单机版 Redis单机版搭建: 因为需要安装redis源码包,所以我们需要gcc环境支持 : 使用FTP工具将压缩包上传至 ...

  3. Vue中this的绑定

    之前写过一篇文章 ES6与React中this完全解惑 其实Vue也是相同的道理.在Vue的官方文档中提到: 不要在选项属性或回调上使用箭头函数,比如 created: () => consol ...

  4. 基于webRTC技术 音频和视频,IM解

    由于原来的文章 http://blog.csdn.net/voipmaker  转载注明出处. 基于WebRTC技术可实现点对点音视频.即时通信.视频会议.最新的系统组件包含: TeleICE NAT ...

  5. Java native代码编译步骤简书

    Java native代码编译步骤简书 目的:防止java代码反编译获取密码算法 (1)编写实现类com.godlet.PasswordAuth.java (2)编译java代码javac Passw ...

  6. poj 3090 Visible Lattice Points 法利系列||通过计

    因为图像关于对角线对称.所以我们仅仅看下三角区域. 将x轴看做分母,被圈的点看成分子 依次是{1/2},{1/3,1/2},{1/4,3/4},{1/5,2/5,3/5,4/5} 写成前缀和的形式就是 ...

  7. css3中的制作动画小总结

    系列教程 CSS3属性中有关于制作动画的三个属性:Transform,Transition,Animation: Transform 在CSS3中transform主要包括以下几种:旋转rotate. ...

  8. Windows PowerShell 学习之——Cmdlet处理生命周期

    这一次介绍一下Cmdlet处理过程的生命周期 总共分为六个部分 1.概述 2. 命令行输入绑定参数(parameters) 3. 开始指令处理 4. 接受管道输入绑定参数 5. 处理记录 6. 处理记 ...

  9. Obtaining Directory Change Notifications(微软的例子,使用FindFirstChangeNotification,FindNextChangeNotification,FindCloseChangeNotification API函数)

    An application can monitor the contents of a directory and its subdirectories by using change notifi ...

  10. python 快速排序 完整

    两头开始 以第一个为基准,从有往左,找第一个比基准数 大的,然后交换 从左往右,找第一个比基准数晓得,然后交换 遍历剩下的 基准数  左边的数们  以及  基准数 右边的数们 def quick_so ...