Oracle Net Servicesとリモート接続

データベースOracle

記事内に広告が含まれています。

Oracle Net Servicesとリモート接続

ネットワークを介してOracleデータベースに接続することをリモート接続といいます。
リモート接続を行うには、Oracle Net Servicesの構成が必要です。

以下、リモート接続を行う際の前提です。
・接続元コンピュータ(クライアント)及び、データベースサーバーは必要なソフトウェアが導入及び構成済み。
・接続元のクライアントアプリケーションとしてSQL*Plusを使用する。
・接続先Oracleデータベースの情報を、クライアントに配置した設定ファイルtnsnames.oraから得る。(ローカルネーミング) ※1

①接続先Oracleデータベースに対応する接続識別子を指定して、SQL*Plusを起動。
②tnsnames.oraから接続識別子に対応する接続先Oracleデータベースの情報(接続記述子)を得る。→名前解決 ※1
③接続記述子のホスト名およびポート番号で接続を待ち受けるリスナーに対して、接続要求を送信。
④接続要求を受信したリスナーは、接続要求に含まれるデータベースサービス名に対応するOracleデータベースに接続を中継。
⑤SQL*PlusとOracleデータベースでリモート接続が確立される。

※1 接続識別子をtnsnames.oraに記載し接続する方法のほかに、SQL*Plusに接続識別子を直接記載する方法もあります。(簡易接続ネーミング)
ex.)データベースサーバー(172.16.199.1)のOracleデータベースにリモート接続する場合
●ローカルネーミング:tnsnames.oraに記載。
●簡易接続ネーミング:コマンドラインに直接記載。
(左:tnsnames.ora、右:接続時のコマンドプロンプト)

以下、各ネーミングメソッドとなります。

ネーミングメソッド 接続識別子から接続先情報を解決する方法
簡易接続ネーミング(EZCONNECT) 接続識別子に接続先情報を直接指定する。
ローカルネーミング(TNSNAMES) クライアントコンピュータ上の設定ファイルtnsnames.oraに接続識別子と接続先情報の対応関係を記載しておき、ここから接続先情報を得る。
ディレクトリネーミング(LDAP) LDAP準拠のディレクトリサーバーに接続識別子と接続先情報の対応関係を記載しておき、ここから接続先情報を得る。
外部ネーミング(NIS) 外部のネーミングサービスに接続識別子と接続先情報の対応関係を記載しておき、ここから接続先情報を得る。

以上、本記事ではOracleデータベースのリモート接続方法について、簡単に紹介しました。

参考文献…オラクルマスター教科書 Silver DBA Oracle Database Administration I 第4章

システムトラストでは一緒に働いていただける仲間を募集中です。
株式会社システムトラスト

システムトラストでは、システムエンジニア、プログラマーなどを随時募集中です。気軽にご相談ください。

お問合せ