Oracle 建立DBlink的流程及注意事項

2021-07-28 02:40:24 字數 2532 閱讀 1510

電腦a(192.168.1.123),電腦b(192.168.1.124)

a作為建立dblink的一方,b作為被連線的一方。

注:

(1)客戶機上的using中的連線一定要記得重寫,只有服務端的鏈結配置才能在dblink中引用,配置在oracle客戶端 的tnsnane.ora中的鏈結配置是不能在dblink中使用的 (否則會報錯: ora-12154: tns:could not resolve service name)

(2)以sysdba身份賦予使用者--->建立dblink的許可權,以及連線許可權

grant dba,connect,create

database link,create

public

database link to

user

根據資料庫版本,選擇是否需要使用者名稱和密碼加引號(oracle11g需要加引號,以區分大小寫,oracle11g一下,則不需要區分大小寫)

在a電腦上執行以下**:

create

database link dblink_name --create

public

database link dblink_name(這個使所有使用者可以使用)

connect

to 使用者名稱 identified by 密碼(這裡的密碼可能需要加雙引號)

using

' (description =

(address_list =

(address = (protocol = tcp)(host = 11.11.11.11)(port = 1521))

)(connect_data =

(server = dedicated)

(service_name = test)

))';

如果在資料庫服務端上,已經在tnaname.ora中配置好連線識別符號之後,就可以直接在using後面直接使用配置好的連線識別符號就行

例如:

create

database link dblink_name

connect

to 使用者名稱 identified by 密碼

using

' tests';

注意的是:有的密碼需要加引號,有的不需要(不同版本有不同的寫法)利用dblink進行跨庫查詢的示例如下:

select * from tablename@dblink_name

測試例項:

a(version:10.2g);b(version: 11.2g)

對於不知道遠端資料庫伺服器的使用者名稱或密碼無法登陸的時候,可以使用如下sql查詢資料庫的版本的資訊:

select * from v$version

如果知道遠端資料庫伺服器的使用者名稱和密碼,則可以登陸進去,利用控制台進行操作,直接輸入如下命令即可:

cmd----> sqlplus /nolog

a上建立dblink連線到b資料庫

檢視資料庫的版本資訊:

a版本資訊如下:

b版本資訊如下:

(1)使用者名稱大寫小寫均可,密碼小寫,都沒有雙引號,會出現圖下的錯誤(ora-01017和ora-02063)

(2)使用者名稱大小寫均可,密碼小寫,如果有雙引號,則不會報錯

(3)使用者名稱大小寫均可,密碼大寫,加雙引號,此時也會報錯(錯誤同1一樣)(ora-01017和ora-02063)

(4)使用者名稱大小寫均可,密碼大寫,不加雙引號,此時也會報錯(同1)(ora-01017和ora-02063)

檢視使用者的許可權:

select * from user_role_privs
對於oracle11g:

(1)建立dblink的時候加上雙引號,雙引號的意思就是按照本來輸入的字串(大寫就是大寫,小寫就是小寫),不會自動轉換成大寫

(2)using後的連線識別符號如果在資料庫服務端的tnsname裡面進行了定義,則可以直接使用,只在客戶端定義或者沒有定義,則需要使用連線資料庫的描述。

oracle11g的使用者名稱和密碼區分大小寫問題:

參考部落格:

ORACLE如何建立DBLINK

當前使用者下執行 create database link testdblink connect to dbname identified by dbpassword using description address list address protocol tcp host 192.168.2...

oracle建立dblink方法

當使用者要跨本地資料庫,訪問另外乙個資料庫表中的資料時,本地資料庫中必須建立了遠端資料庫的dblink,通過dblink本地資料庫可以像訪問本地資料庫一樣訪問遠端資料庫表中的資料。下面講介紹如何在本地資料庫中建立dblink.建立dblink一般有兩種方式,不過在建立dblink之前使用者必須有建立...

建立Oracle的DB Link實戰

當有在一台資料庫伺服器上集合或者分類篩選位於其他資料庫伺服器上的資料時,如果從應用層面上來解決問題,可能需要占用大量記憶體並且很費事。oracle資料庫本身提供了db link的機制來達到這個目的,以下以具體步驟來實現這個操作。1.首先在管理資料庫上建立到乙個資料庫的db link.drop exi...