| ページ一覧 | ブログ | twitter |  書式 | 書式(表) |

MyMemoWiki

Oracle 10gR2 リスナーの構成 Oracle Net Manager

提供: MyMemoWiki
ナビゲーションに移動 検索に移動

Oracle 10gR2 リスナーの構成 Oracle Net Manager

| Oracle Database19c | Oracle Database10g | Fedora 10 |

概要


リモート接続とローカル接続


リモート接続

  • リスナーが、ネットワークを介して送信されるクライアントからの接続要求を受付け、サーバープロセスに引き渡すことにより接続を行う。
  • インスタンスと同じマシンにリスナーが起動している必要がある
ローカル接続

  • 同じマシンからインスタンスに接続する場合、リスナーを介さずに接続することができる
  • リスナーを起動しておく必要はない

ネーミングメソッド


ネーミングメソッド 内容
ローカル クライアント側のローカル構成ファイル(tnsnames.ora)の接続情報を利用
簡易接続 TCP/IPにおいて、ホスト名、リスナーポート、データベースサービス名を利用
ディレクトリ LDAP対応のディレクトリサーバーで管理された接続情報を利用
外部 Network Information Sercvice(NIS)などで提供される外部ネーミングサービスで管理された接続情報を利用

簡易接続


connect ユーザー名/パスワード@ホスト名[:リスナーポート]/サービス名

ホスト名とサービス名を間違え易いので注意

ローカルネーミングメソッド概要図


0872 oraclenet01.jpg

サーバー側の構成


Oracle Net Managerによるリスナーの構成


oracle# netmgr

DBCAにより、データベースを作成すると、以下のように構成されている。

サービス・ネーミング

サービス・ネーミング サービス名
oradb1 oradb1.vboxfedora10.typea.info

0870 ora netmgr01.jpg

リスナー

ホスト ポート
voboxfedora10 1521

0871 ora netmgr02.jpg

listener.ora

$ORACLE_HOME/network/admin/listener.ora

# listener.ora Network Configuration File: /opt/oracle/app/oracle/product/10.2.0/db_1/network/admin/listener.ora
# Generated by Oracle configuration tools.

LISTENER =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = vboxfedora10)(PORT = 1521))
  )
リスナーのステータスを確認

oracle]$ lsnrctl status

LSNRCTL for Linux: Version 10.2.0.1.0 - Production on 28-DEC-2008 07:20:27

Copyright (c) 1991, 2005, Oracle.  All rights reserved.

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=vboxfedora10)(PORT=1521)))
STATUS of the LISTENER
------------------------
Alias                     LISTENER
Version                   TNSLSNR for Linux: Version 10.2.0.1.0 - Production
Start Date                28-DEC-2008 05:47:49
Uptime                    0 days 1 hr. 32 min. 37 sec
Trace Level               off
Security                  ON: Local OS Authentication
SNMP                      OFF
Listener Parameter File   /opt/oracle/app/oracle/product/10.2.0/db_1/network/admin/listener.ora
Listener Log File         /opt/oracle/app/oracle/product/10.2.0/db_1/network/log/listener.log
Listening Endpoints Summary...
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=localhost.localdomain)(PORT=1521)))
Services Summary...
Service "oradb1.vboxfedora10.typea.info" has 1 instance(s).
  Instance "oradb1", status READY, has 1 handler(s) for this service...
Service "oradb1XDB.vboxfedora10.typea.info" has 1 instance(s).
  Instance "oradb1", status READY, has 1 handler(s) for this service...
Service "oradb1_XPT.vboxfedora10.typea.info" has 1 instance(s).
  Instance "oradb1", status READY, has 1 handler(s) for this service...
The command completed successfully

Oracle用のポートを開放する


クライアント側の構成

Oracle Net Configuration Assistantを起動


ローカル・ネット・サービス名の構成を選択

0862 ora netcfg01.jpg

追加

0863 ora netcfg02.jpg

サービス名を設定

  • インスタンスはインスタンス名で識別されます。
  • インスタンス名は、INSTANCE_NAME初期化パラメータで指定されます。インスタンス名のデフォルトは、データベース・インスタンスのOracleシステム識別子(SID)です。
  • サービス名はデータベースの論理表現です。インスタンスを起動すると、インスタンスはそれ自体を1つ以上のサービス名を使用してリスナーに登録します。
  • クライアント・プログラムまたはデータベースがリスナーに接続すると、これらはサービスへの接続を要求します。*
  • サービス名は複数のデータベース・インスタンスを識別することができ、インスタンスは複数のサービスに属することができます。
  • リスナーはクライアントとインスタンスとの間の仲介役を果し、接続要求を適切なインスタンスに渡します。サービスに接続するクライアントは、必要なインスタンスを指定する必要がありません。

oradb1.vboxfedora10.typea.info

0864 ora netcfg03.jpg

TCPを選択

0865 ora netcfg04.jpg

ホスト名の設定

0866 ora netcfg05.jpg

テストの実行

0867 ora netcfg06.jpg

成功

0868 ora netcfg07.jpg

ネットサービス名をつけて終了

0869 ora netcfg08.jpg

tnsnames.ora

# tnsnames.ora Network Configuration File: C:\oracle\product\10.2.0\client_1\network\admin\tnsnames.ora
# Generated by Oracle configuration tools.

ORADB1 =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.24.56)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVICE_NAME = oradb1.vboxfedora10.typea.info)
    )
  )

接続テスト(クライアント ~ リスナー間)

tnsping

tnsping ネットサービス名 [試行回数]
tnspingの実行
$ tnsping oradb1 

TNS Ping Utility for Linux: Version 10.2.0.1.0 - Production on 09-FEB-2009 08:18:27

Copyright (c) 1997, 2005, Oracle.  All rights reserved.

Used parameter files:
/opt/oracle/app/oracle/product/10.2.0/db_1/network/admin/sqlnet.ora


Used TNSNAMES adapter to resolve the alias
Attempting to contact (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = vboxfedora10)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = oradb1.vboxfedora10.typea.info)))
OK (30 msec)
回数を指定
$ tnsping oradb1 3
 
TNS Ping Utility for Linux: Version 10.2.0.1.0 - Production on 09-FEB-2009 08:19:55
   :
OK (10 msec)
OK (10 msec)
OK (10 msec)
簡易接続のテスト
$ tnsping  192.168.24.56:1521/oradb

TNS Ping Utility for Linux: Version 10.2.0.1.0 - Production on 09-FEB-2009 08:21:28

Copyright (c) 1997, 2005, Oracle.  All rights reserved.

Used parameter files:
/opt/oracle/app/oracle/product/10.2.0/db_1/network/admin/sqlnet.ora

Used EZCONNECT adapter to resolve the alias
Attempting to contact (DESCRIPTION=(CONNECT_DATA=(SERVICE_NAME=oradb))(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.24.56)(PORT=1521)))
OK (0 msec)