プロが教えるわが家の防犯対策術!

オラクルDBリンクの設定について質問です

オラクル8.1.5を使用しているものですが、DBリンクの設定の仕方が
よく分かりません。tnsnames.oraとcreate database linkの設定
で実現できないものでしょうか?

宜しくお願い致します

A 回答 (2件)

基本的にその2つで実現できます。



特に無塚しい事はないと思いますが、リンク先のデータベースのテーブルなどのシノニムを作ったほうが、自分のデータベース上にあるものとして、SQLなどを書けるので便利だと思います。

この回答への補足

すみません。シノニムってサーバーおよびオラクル別々の場合設定できましたでしょうか?できれば設定方法をおしえていただきたいのですが・・
またNET8の設定でtnsnames.oraにどのように記述すれば他のDBを認識するのか
教えてください
よろしくお願い致します

補足日時:2001/10/03 09:16
    • good
    • 0

まず、tnsnames.oraですが、リンクを作りたいOracleのtnsnames.oraに、以下のような記述を付け加えます。



リンクのサービス名:linkdb
リンク先のホスト名:linkserver
プロトコル:TCP/IP
Listnerのポート:1521
リンクしたいデータベースのSID:TEST

LINKDB.WORLD =
(DESCRIPTION =
(ADDRESS =
(PROTOCOL = TCP)
(HOST = LINKSERVER)
(PORT = 1521)
)
(CONNECT_DATA =
(SID = TEST)
)
)

リンク作成SQLは、以下のようになると思います。
リンク名:linktodb
リンクの際に使うユーザー名:linkuser
リンクユーザーのパスワード:linkpass

create public database link linktodb connect to linkdb identified by linkuser using 'linkpass' ;

リンク先のテーブルのシノニム作成は以下のとおり
リンク先のテーブルのスキーマユーザー:towner
リンク先のテーブル名:linktable
シノニム名:linksynonym

create synonym linksynonym for towner.linktable@linktodb ;

以上で、シノニムが作成できて、普通のテーブルのように
select * from linksynonym ;
のようなアクセスができるはずです。
ただし、当然、リンクを作成するユーザーには、CREATE DATABASE LINKシステム権限が、シノニムを作成するユーザーには、CREATE SYNONYMシステム権限が必要ですし、それぞれのオブジェクト権限も注意してください。
    • good
    • 0
この回答へのお礼

ありがとうございます
早速試してみます

お礼日時:2001/10/05 13:53

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

関連するカテゴリからQ&Aを探す