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. 编写ATL控件的简单做法

    作者:朱金灿 来源:http://blog.csdn.net/clever101 ATL并不像MFC库那样提供了很多的控件窗口类,因此要使用ATL的话需要自己去封装.封装的做法很简单.比如现在我需要一 ...

  2. BZOJ 2783 树 - 树上倍增 + 二分

    传送门 分析: 对每个点都进行一次二分:将该点作为链的底端,二分链顶端所在的深度,然后倍增找到此点,通过前缀和相减求出链的权值,并更新l,r. code #include<bits/stdc++ ...

  3. 中国象棋V2:Java源代码、毕业设计等所有文档,已经全部提交到CSDN-Code平台

    下载地址:https://code.csdn.net/FansUnion/chinesechess-v2 主要内容:Java源代码.毕业设计.API文档.声音图片等资源.Demo截图等一切的一切. 2 ...

  4. python 爬取bilibili 视频信息

    抓包时发现子菜单请求数据时一般需要rid,但的确存在一些如游戏->游戏赛事不使用rid,对于这种未进行处理,此外rid一般在主菜单的响应中,但有的如番剧这种,rid在子菜单的url中,此外返回的 ...

  5. callback回调函数理解 相当于this指针

    1.callback函数在微软的官方手册中是这样定义callback函数的:“callback函数是由应用程序定义而由操作系统调用的函数”.   凡是由用户设计而却由windows系统调用的函数,统称 ...

  6. redis集群搭建手册

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

  7. jsp中国文字形式提交,request对象获取乱码

    jsp表单提交中文字符,request对象获取时乱码解决方法 第一种: 在request对象获取页面Charset中的"C"大写,且页面无中文字符,最好用英文,否则MyEclips ...

  8. POJ3280 Cheapest Palindrome 【DP】

    Cheapest Palindrome Time Limit: 2000MS   Memory Limit: 65536K Total Submissions: 6013   Accepted: 29 ...

  9. node 调用Python exec child_process 模块

    参考:http://javascript.ruanyifeng.com/nodejs/child-process.html https://nodejs.org/api/child_process.h ...

  10. mysql 权限命令

    grant all on *.* to 'root' identified by 'root';