久久r热视频,国产午夜精品一区二区三区视频,亚洲精品自拍偷拍,欧美日韩精品二区

您的位置:首頁技術(shù)文章
文章詳情頁

ORACLE創(chuàng)建DBlink的過程及使用方法

瀏覽:56日期:2023-09-15 20:49:58
目錄1. ORACLE DBlink的創(chuàng)建和使用1.1. 基本概念:1.2. 概述1.2.1. database link分類1.3. database link的創(chuàng)建1.4. 查看dblink1.5. 使用toad for oracle創(chuàng)建dblink1.6. database link刪除1.7. 通過dblink應(yīng)用例子1. ORACLE DBlink的創(chuàng)建和使用1.1. 基本概念:database link(簡稱DBLINK)是定義一個數(shù)據(jù)庫到另一個數(shù)據(jù)庫的路徑的對象,database link允許查詢其他數(shù)據(jù)庫的遠程表及執(zhí)行遠程程序。database link是單向的連接。在創(chuàng)建database link的時候,Oracle在數(shù)據(jù)字典中保存相關(guān)的database link的信息。在使用database link的時候,Oracle通過預(yù)先定義好的連接信息,訪問相應(yīng)的遠程數(shù)據(jù)庫以完成相應(yīng)的工作。dblink(Database Link)就像電話線一樣是一個通道,如果要訪問另外一個數(shù)據(jù)庫表中的數(shù)據(jù)時,本地數(shù)據(jù)庫中就必須要創(chuàng)建遠程數(shù)據(jù)庫的dblink,通過dblink本地數(shù)據(jù)庫可以像訪問本地數(shù)據(jù)庫一樣訪問遠程數(shù)據(jù)庫表中的數(shù)據(jù)。

1、建立dblink之前需要確認的事項:

#確認從local database到remote database的網(wǎng)絡(luò)連接是正常的,tnsping要能成功。#確認在remote database上面有相應(yīng)的訪問權(quán)限。1.2. 概述

1、database link是定義一個數(shù)據(jù)庫到另一個數(shù)據(jù)庫的路徑的對象,database link允許你查詢遠程表及執(zhí)行遠程程序。在任何分布式環(huán)境里,database都是必要的。另外要注意的是database link是單向的連接。

2、在創(chuàng)建database link的時候,Oracle再數(shù)據(jù)字典中保存相關(guān)的database link的信息,在使用database link的時候,Oracle通過Oracle Net用用戶預(yù)先定義好的連接信息訪問相應(yīng)的遠程數(shù)據(jù)庫以完成相應(yīng)的工作。

1.2.1. database link分類類型Owner描述Pr ivate創(chuàng)建database link的user擁有該database link在本地數(shù)據(jù)庫的特定的schema下建立的database link。只有建立該database link的schema的session能使用這個database link來訪問遠程的數(shù)據(jù)庫。同時也只有Owner能刪除它自己的private database link。PublicOwner是PUBLIC.Public的database link是數(shù)據(jù)庫級的,本地數(shù)據(jù)庫中所有的擁有數(shù)據(jù)庫訪問權(quán)限的用戶或pl/sql程序都能使用此database link來訪問相應(yīng)的遠程數(shù)據(jù)庫。GlobalOwner是PUBLIC.Global的database link是網(wǎng)絡(luò)級的,When an Oracle network uses a directory server, the directory server automatically create and manages global database links (as net service names) for every Oracle Database in the network. Users and PL/SQL subprograms in any database can use a global link to access objects in the corresponding remote database.Note: In earlier releases of Oracle Database, a global database link referred to a database link that was registered with an Oracle Names server. The use of an Oracle Names server has been deprecated. In this document, global database links refer to the use of net service names from the directory server.1.3. database link的創(chuàng)建

創(chuàng)建dblink的用戶有對應(yīng)的數(shù)據(jù)庫權(quán)限,創(chuàng)建dblink命令為:

--public表示所創(chuàng)建的dblink所有用戶都可以使用

create public database link

或者--所創(chuàng)建的dblink只能是創(chuàng)建者能使用,別的用戶使用不了

create database link

如果用戶沒有權(quán)限創(chuàng)建dblink,則可以通過管理員身份并使用 :

grant create public database link, create database link to myAccount;1.4. 查看dblinkset linesize 300set pagesize 999col DB_LINK format a30col USERNAME format a30col HOST format a30col CREATED format a10col OWNER format a10col object_name format a20select owner,object_name from dba_objects where object_type='DATABASE LINK';SELECT A.OWNER, A.HOST, A.DB_LINK, A.USERNAME, A.CREATED, DECODE (B.FLAG, 0, 'NO', 1, 'YES') 'DEC', B.AUTHUSR, C.STATUSFROM DBA_DB_LINKS A, SYS.USER$ U, SYS.LINK$ B, DBA_OBJECTS C WHERE A.DB_LINK = B.NAME AND A.OWNER = U.NAME AND B.OWNER# = U.USER# AND A.DB_LINK = C.OBJECT_NAME AND A.OWNER = C.OWNER AND C.OBJECT_TYPE = 'DATABASE LINK'ORDER BY 1, 2, 3;查看dblink的link信息:select * from dba_db_links;

或者

select * from dba_db_links;

如:A庫需要訪問B庫的表數(shù)據(jù),需要在A庫建立連接到B庫的dblink,在A賬戶下執(zhí)行(推薦):

create database link LIS_LINK01 connect to bUser identified by bPasword using '10.22.xx.xx:1521/orcl'create database link hebtz connect to hebtz identified by '1' using '192.168.2xx:1521/hebtzstd';

bUser:B庫的數(shù)據(jù)庫賬戶

bPassword:B庫的數(shù)據(jù)密碼

10.22.xx.xx:B庫的ip地址

create database link blink1 connect to dbName identified by dbPassword using '(DESCRIPTION =(ADDRESS_LIST =(ADDRESS =(PROTOCOL = TCP)(HOST = 192.168.1.106)(PORT = 1521)))(CONNECT_DATA =(SERVICE_NAME = orcl)))';--blink1 : 表示dblink名字--dbName :表示 遠程數(shù)據(jù)庫的用戶--dbPassword:表示 遠程數(shù)據(jù)庫的密碼--HOST : 表示遠程數(shù)據(jù)庫IP--PORT : 表示遠程數(shù)據(jù)庫端口--SERVICE_NAME : 遠程數(shù)據(jù)庫的實例名1.5. 使用toad for oracle創(chuàng)建dblink

圖解dblink創(chuàng)建過程:

這時可以通過SSH用戶訪問SJSJZX用戶中的表了:

select * from T_WEBSERVICE@db31.6. database link刪除

-- 刪除public類型的database link

DROP PUBLIC database link link_name;

-- 刪除非public類型的database link

-- 注意:只有owner自己能刪除自己的非public類型database link

DROP database link link_name;1.7. 通過dblink應(yīng)用例子

當(dāng)需要跨庫拷貝數(shù)據(jù)而且數(shù)據(jù)量很大的時候,使用dblink速度很快。

如:通過dblink跨庫復(fù)制數(shù)據(jù)量非常多的表T_WEBSERVICE

create table test as select * from T_WEBSERVICE@db3

到此這篇關(guān)于ORACLE DBlink的創(chuàng)建和使用的文章就介紹到這了,更多相關(guān)oracle創(chuàng)建dblink內(nèi)容請搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!

主站蜘蛛池模板: 四会市| 冀州市| 嘉义市| 昌黎县| 屯门区| 醴陵市| 沙河市| 阜平县| 额尔古纳市| 五莲县| 南召县| 玉环县| 静乐县| 永胜县| 青冈县| 图木舒克市| 原阳县| 牙克石市| 泽库县| 赣州市| 工布江达县| 昌宁县| 伊金霍洛旗| 淅川县| 邹平县| 定结县| 广宗县| 博湖县| 长海县| 明光市| 田东县| 盐边县| 简阳市| 囊谦县| 黄陵县| 绥阳县| 宁乡县| 邯郸市| 靖安县| 广南县| 崇文区|