當(dāng)用戶要跨本地數(shù)據(jù)庫,訪問另外一個數(shù)據(jù)庫表中的數(shù)據(jù)時ora03113 創(chuàng)建數(shù)據(jù)庫時,本地數(shù)據(jù)庫中必須創(chuàng)建了遠程數(shù)據(jù)庫的,通過本地數(shù)據(jù)庫可以像訪問本地數(shù)據(jù)庫一樣訪問遠程數(shù)據(jù)庫表中的數(shù)據(jù)。下面講介紹如何在本地數(shù)據(jù)庫中創(chuàng)建.
創(chuàng)建一般有兩種方式,不過在創(chuàng)建之前用戶必須有創(chuàng)建的權(quán)限。想知道有關(guān)的權(quán)限,以sys用戶登錄到本地數(shù)據(jù)庫:
* from t
where t. like upper('%link%');
1 SYS LINK NO
2 SYS DROP LINK NO
3 SYS LINK NO
可以看出在數(shù)據(jù)庫中有三種權(quán)限 LINK(所創(chuàng)建的只能是創(chuàng)建者能使用ora03113 創(chuàng)建數(shù)據(jù)庫時,別的用戶使用不了), LINK(表示所創(chuàng)建的所有用戶都可以使用),DROP LINK。
在sys用戶下,把 LINK,DROP LINK權(quán)限授予給你的用戶
grant LINK,DROP LINK to scott;
然后以scott用戶登錄本地數(shù)據(jù)庫
1.創(chuàng)建的第一種方式,是在本地數(shù)據(jù)庫.ora文件中配置了要遠程訪問的數(shù)據(jù)庫。
link
to scott by tiger using 'bylw';
其中是你創(chuàng)建的名字,bylw是遠程數(shù)據(jù)庫的實例名,scott/tiger是登錄到遠程數(shù)據(jù)庫的用戶/密碼。然后在本地數(shù)據(jù)庫中通過訪問遠程數(shù)據(jù)庫'bylw'中scott.表,sql語句如下所示
* from scott.@;
2.創(chuàng)建的第二種方式,是在本地數(shù)據(jù)庫.ora文件中沒有配置要訪問的遠程數(shù)據(jù)庫,
link
to scott by tiger
using '( =
(=
( = ( = TCP)(HOST = 192.168.1.5)(PORT = 1521))
)
( =
( = )
( = bylw)
)
)';
第二種是把第一種配置在.ora文件中的信息,直接放在創(chuàng)建語句后面。第一種情況.ora文件中信息如下:
bylw =
( =
( =
( = ( = TCP)(HOST = 192.168.1.5)(PORT = 1521))
)
( =
( = )
( = bylw)
)
)