Oracle
遠端數據庫對 Oracle 中的 DB 連結有什麼作用
在本地數據庫中,它必須通過
CREATE DATABASE LINK
.
- 遠端數據庫端呢,它有什麼用?
- 關於
fixed user link
,本地數據庫需要知道ID
和password
設置。這ID
是一個普通帳戶,有人可以在沒有 DB LINK 的情況下訪問遠端數據庫,ID
還是僅用於DB LINK
?
遠端數據庫端呢,它有什麼用?
本地和遠端數據庫伺服器上都必須安裝 Oracle Net。並且正在使用的使用者應該
CREATE SESSION
對遠端數據庫具有系統權限。在固定使用者連結上,本地數據庫需要知道 ID 和密碼設置。ID 是一個普通帳戶,某人可以在沒有 DB LINK 的情況下訪問遠端數據庫,還是 ID 僅用於 DB LINK?
您可以選擇連接到遠端數據庫的選項,一個是使用目前使用者,另一個是固定使用者,可以在
CONNECT TO
子句後顯式定義。該使用者是遠端使用者,必須存在於遠端數據庫伺服器上並且必須具有CREATE SESSION
權限。如果您省略它,則目前登錄的使用者用於訪問遠端伺服器上的表。[oracle@localhost admin]$ sqlplus scott/scott SQL*Plus: Release 11.2.0.4.0 Production on Thu Jun 30 16:39:08 2016 Copyright (c) 1982, 2013, Oracle. All rights reserved. Connected to: Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production With the Partitioning, OLAP, Data Mining and Real Application Testing options SQL> create database link dblink1 using 'account'; Database link created. SQL> create database link dblink2 connect to jay identified by jay using 'account'; Database link created. SQL> select * from emp@dblink1; select * from emp@dblink1 * ERROR at line 1: ORA-28000: the account is locked ORA-02063: preceding line from DBLINK1 SQL>
看看上面的例子。我已經以 SCOTT 使用者身份連接到本地數據庫,並創建了兩個 dblink 以使用“帳戶”TNSNAME 連接到名為“帳戶”的遠端伺服器。
第一個 dblink
dblink1
使用目前使用者,在我們的例子中是 SCOTT,用於從遠端伺服器“帳戶”的 emp 中選擇 *。在範例中,select 語句返回了一個錯誤,指出遠端站點的 SCOTT 使用者已被鎖定。第二個 dblink
dblink1
使用名為 jay 的固定使用者,因此該 dblink 可用於根據使用者擁有的權限訪問 Jay 模式擁有的表以及其他表。有關詳細資訊,請參閱 Oracle 文件。 創建數據庫連結