夢幻之旅

          DEBUG - 天道酬勤

             :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
            671 隨筆 :: 6 文章 :: 256 評論 :: 0 Trackbacks

                當用戶要跨本地數據庫,訪問另外一個數據庫表中的數據時,本地數據庫中必須創建了遠程數據庫的dblink,通過dblink本地數據庫可以像訪問本地數據庫一樣訪問遠程數據庫表中的數據。下面講介紹如何在本地數據庫中創建dblink.

            創建dblink一般有兩種方式,不過在創建dblink之前用戶必須有創建dblink的權限。想知道有關dblink的權限,以sys用戶登錄到本地數據庫:   

          select * from user_sys_privs t where t.privilege like upper('%link%');

               結果如下:
             
            可以看出在數據庫中dblink有三種權限:
                1).CREATE DATABASE LINK(所創建的dblink只能是創建者能使用,別的用戶使用不了)
                2).CREATE PUBLIC DATABASE LINK(public表示所創建的dblink所有用戶都可以使用)
                3).DROP PUBLIC DATABASE LINK

            在sys用戶下,把CREATE PUBLIC DATABASE LINK,DROP PUBLIC DATABASE LINK權限授予給你的用戶

          grant CREATE PUBLIC DATABASE LINK,DROP PUBLIC DATABASE LINK to scott;


            然后以scott用戶登錄本地數據庫

            1.創建dblink的第一種方式,是在本地數據庫tnsnames.ora文件中配置了要遠程訪問的數據庫。

          create public database link to_bylw connect to scott identified by tiger using 'bylw';


            其中to_bylw是你創建的dblink名字,bylw是遠程數據庫的實例名,scott/tiger是登錄到遠程數據庫的用戶/密碼。然后在本地數據庫中通過dblink訪問遠程數據庫'bylw'中scott.tb_test表,sql語句如下所示

          select * from scott.tb_test@to_bylw;

           

            2.創建dblink的第二種方式,是在本地數據庫tnsnames.ora文件中沒有配置要訪問的遠程數據庫,

          create database link link_em
             connect 
          to mydata identified by mydata##
             using 
          '(DESCRIPTION =
                        (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.139)(PORT = 1521))
                        (CONNECT_DATA =
                           (SERVER = DEDICATED)
                           (SERVICE_NAME = ORCL)
                         )
                       )
          ';
             個人比較喜歡第二種創建方式.
          posted on 2011-08-16 09:47 HUIKK 閱讀(234) 評論(0)  編輯  收藏 所屬分類: DataBase
          主站蜘蛛池模板: 宣城市| 贞丰县| 万源市| 安塞县| 锦屏县| 普兰店市| 乐业县| 湟中县| 洛阳市| 蒙自县| 白朗县| 米易县| 绵竹市| 南雄市| 嘉祥县| 攀枝花市| 琼结县| 丽江市| 新建县| 奈曼旗| 西贡区| 江口县| 永顺县| 庆安县| 仁寿县| 平湖市| 寻甸| 海南省| 塔城市| 商丘市| 金昌市| 浑源县| 高密市| 鹤山市| 仁怀市| 固原市| 长治市| 珲春市| 农安县| 馆陶县| 赤城县|