oracle 跨数据库、跨机器、局域网查询

工作中有时需要跨数据库、跨机器、局域网查询某个数据的数据,因此需要在PL/SQL中执行如下操作:


第一步:


          为你需要操作的远程数据库服务器建立本地服务名:

       在本地数据库安装文件中,找到$ORACLE_HOME/network/admin/tnsnames.ora文件,

    末尾添加

    --第一个远程服务器的服务名:MYORACLE1

TYBOOKDB-GENGPC=

   (DESCRIPTION =

     (ADDRESS_LIST =

扫描二维码关注公众号,回复: 1388269 查看本文章

       (ADDRESS = (PROTOCOL = TCP)(HOST = GENGPC)(PORT = 1521))

     )

     (CONNECT_DATA =

       (SERVICE_NAME = tybookdb)

     )

   )


第二步:


 

    在本机上使用sysdba的角色登录本地数据库,创建database link 

    执行如下sql语句:

    --远程服务器一的对应database link

       

create public database link myTyBookdb   --可以随便取名,当然,不能是关键字或保留字

        connect to system identified by orcl

        using 'TYBOOKDB-GENGPC ';

此处应该注意用户名/密码的大小写

    --其中using后面填对应的数据库服务名,dbUserName1dbpwd1填对应的数据服务器登录名,密码

    --删除database link

          Drop database link  myTyBookdb;  --本例中是myTyBookdb    

第三步:


insert into ebookinfo@myTyBookdb select * from  ebookinfo where rownum<=10000;


第四步:


 查看当前数据库的DB Link;

      select * from user_db_links; --用户 DB Link
      select * from dba_db_links;  --dba DB Link
      select * from v$dblink;      --当前DB Link


参考引用:http://blog.csdn.net/tangkai_java/article/details/5831741


猜你喜欢

转载自zhijie-geng.iteye.com/blog/1532559