4 ネットワーク環境の構成
これらの項では、クライアント/サーバー・ネットワークの完全な構成について説明します。
4.1 ネットワーク構成の理解
クライアント・アプリケーションとデータベースが通信するには、クライアント・アプリケーションで接続するデータベースを識別できる必要があり、データベースは識別情報を提供する必要があります。サービス名を使用してデータベースに接続できます。サービス名はデータベースを論理的に表示したもので、この方法によってクライアントにデータベースを提示します。単一のデータベースを複数のサービスとして提示できます。
サービス名では、クライアント・アプリケーションがサーバーの位置を把握する必要のない、位置の透過性を提供できます。データベースを別の位置に移動する場合は、Oracle Netの再構成のみが必要です。クライアント・アプリケーションへの変更は不要です。
この項の内容は次のとおりです。
4.1.1 Oracle Netリスナー構成
データベース・ホスト上のOracle Netリスナー(リスナー)は、クライアント接続要求をリスニングするプロセスです。着信中のクライアント接続要求を受信し、データベース・サーバーに対する要求の通信量を管理します。
デフォルトのリスナー構成ファイルはlistener.ora
という名前で、Oracleホーム・ディレクトリのサブディレクトリnetwork/admin
にあります。たとえば、使用するOracleホーム・ディレクトリが/u01/app/oracle/product/11.2.0/dbhome_1
の場合は、デフォルトで、listener.ora
ファイルが/u01/app/oracle/product/11.2.0/dbhome_1/network/admin
ディレクトリに作成されます。
このファイルには、データベースを識別するプロトコル・アドレスが含まれています。このアドレスはリスナーがリスニングを実行するプロトコルと、プロトコル固有のその他の情報を定義します。たとえば、リスナーを次のプロトコル・アドレスでリスニングを実行するように設定できます。
(DESCRIPTION= (ADDRESS=(PROTOCOL=tcp)(HOST=dbhost.example.com) (PORT=1521)))
この例は、リスナーのホスト・コンピュータおよびポート番号を指定するTCP/IPプロトコル・アドレスを示しています。リスナーは、IPバージョン4(IPv4)またはIPバージョン6(IPv6)のいずれかのアドレスを含むネットワーク・インタフェース上で接続要求をリスニングできます。
listener.ora
ファイルは、インストール時に自動的に構成されます。
構成パラメータにデフォルト値があるため、構成せずにリスナーを起動して使用できます。このデフォルトのリスナーはLISTENER
という名前で、起動時にはサービス名をサポートせず、次のTCP/IPプロトコル・アドレスをリスニングしています。
(ADDRESS=(PROTOCOL=tcp)(HOST=host_name)(PORT=1521))
Oracle Databaseは、起動後1分程度でリスナーに登録されます。リスナーによるクライアント要求の転送先になるサービス名またはデータベースは、listener.ora
ファイルで構成できます。この情報は、リスナーに動的に登録することもできます。リスナーによるサービスおよびデータベースの動的登録は、サービス登録と呼ばれます。
サービス登録は、各データベース・インスタンスのリスナー登録(LREG)プロセス(インスタンスのバックグラウンド・プロセス)によって実行されます。動的サービス登録の場合、listener.ora
ファイルの変更は必要ありません。
関連項目:
-
リスナーおよびサービス名の詳細は、『Oracle Database概要』を参照してください
-
リスナー構成の詳細は、『Oracle Database Net Services管理者ガイド』を参照してください
-
データベース・プロセスの詳細は、「バックグラウンド・プロセスについて」を参照してください
4.1.2 クライアント接続
接続記述子
クライアントは、接続記述子を使用して接続先のデータベースを指定します。この接続記述子には、プロトコルとデータベース・サービス名が含まれています。データベースには複数のサービス名を定義できるため、接続するサービスの名前を接続記述子に指定する必要があります。事前構成されたデータベースでは、サービス名は1つしかなく、デフォルトでグローバル・データベース名に設定されています。
次の例は、クライアントがmydb.us.example.com
というサービス名のデータベースに接続できるようにする接続記述子を示しています。
DESCRIPTION= (ADDRESS=(PROTOCOL=tcp)(HOST=my-server)(PORT=1521)) (CONNECT_DATA= (SERVICE_NAME=mydb.us.example.com))
接続要求
ユーザーは接続文字列を指定することで接続要求を開始します。接続文字列には、ユーザー名とパスワード、および接続識別子が含まれています。この接続識別子は、接続記述子そのもの、または1つ以上のリポジトリに格納されたマッピング情報を使用して接続記述子に解決される名前です。リポジトリへのアクセスには、「ネーミング・メソッド」で説明するネーミング・メソッドを使用します。この名前をネット・サービス名と呼びます。
ネーミング・メソッド
ネーミング・メソッドとは、クライアント・アプリケーションがデータベース・サービスへの接続を試みるときに、接続識別子を接続記述子に解決するために使用する解決方法です。
Oracle Netでは、次のネーミング・メソッドがサポートされています。
-
簡易接続ネーミング
簡易接続ネーミング・メソッドでは、クライアントはホスト名とサービス名で構成されるTCP/IP接続文字列のみを使用してOracle Databaseに接続できます。簡易接続ネーミング・メソッドは構成の必要がありません。簡易接続ネーミングの例は、「クライアント・コンピュータからOracle Databaseへの接続」を参照してください。
-
ローカル・ネーミング
ローカル・ネーミング・メソッドでは、ネット・サービス名によって識別される接続記述子が
tnsnames.ora
というクライアント構成ファイルに格納されます。このファイルは、ORACLE_HOME
/network/admin
ディレクトリにあります。Oracle Database Configuration Assistant(DBCA)を使用してデータベースを作成する場合、ローカル・ネーミングは自動的に構成されます。その後、Net Configuration Assistantを使用して接続記述子およびその接続記述子に対応するネット・サービス名を作成する必要があります。 -
ディレクトリ・ネーミング
ディレクトリ・ネーミングでは、データベース・サービス、ネット・サービス名またはネット・サービス別名がLDAP準拠のディレクトリ・サーバーに格納された接続記述子に解決されます。
関連項目:
-
データベース・サービスの詳細は、Oracle Database管理者ガイドを参照
4.1.3 ネットワーク構成ツール
Net Configuration Assistant
データベースの標準インストールでは、Net Configuration Assistantによって、TCP/IPリスニング・プロトコル・アドレスを持つLISTENER
と呼ばれるリスナーがデータベースに対して自動的に構成されます。カスタム・インストールを実行する場合は、選択したリスナー名およびプロトコル・アドレスを構成するよう求められます。
データベースのインストール後の初期ネットワーク構成にはNet Configuration Assistantを使用します。その後、Oracle Net Managerをネットワークの構成および管理に使用できます。
Oracle Net Manager
Oracle Net Managerは、プロファイルの構成を含む様々なネットワーク構成機能を提供します。
注意:
Microsoft Windowsオペレーティング・システムでのみ、データベースのインストール時に、管理者ではない、権限の低いWindowsユーザー・アカウントをOracleホーム・ユーザーとして指定した場合、Net Configuration AssistantおよびOracle Net Managerにアクセスすると、Oracleホームのユーザー・パスワードの入力を求められます。
関連項目:
-
Windows機能でのOracleホーム・ユーザーの詳細は、『Oracle Databaseプラットフォーム・ガイドfor Microsoft Windows』を参照してください。
4.2 リスナー構成の表示
Oracle Netリスナー(リスナー)はデータベース・ホストで実行され、クライアントからの受信リクエストを処理します。リスナーのステータスはコマンドラインから表示可能です。
コマンドラインからリスナーの情報を表示するには、次のようにします。
4.3 リスナーの起動および停止
Oracleリスナーは、ホストが再起動するたびに自動的に起動するように設定されています。ただし、システムに予期しない状況が起きたときまたは手動でリスナーを停止したときはコマンドラインで再起動できます。
コマンドラインからリスナーを起動または停止するには、次のようにします。
4.4 クライアント・コンピュータからOracle Databaseへの接続
この項の手順を使用すると、ネットワーク構成をテストできます。
簡易接続ネーミングを使用してクライアント・コンピュータからOracle Databaseに接続するには、次の手順を実行します。
関連項目:
-
SQL*Plusの接続例および環境変数の詳細は、Oracle Database管理者ガイドを参照
-
簡易接続、接続識別子およびその他のネーミング・メソッドの詳細は、Oracle Database Net Services管理者ガイドを参照
-
listener.ora
でデフォルト・サービスを定義する方法の詳細は、『Oracle Database Net Servicesリファレンス』を参照してください
4.5 ネットワーク環境の構成: Oracle by Example Series
Oracle by Example(OBE)には、『Oracle Database 2日でデータベース管理者』に関するシリーズが含まれています。このOBEでは、この章のタスクを段階的に説明し、注釈付きのスクリーンショットを使用します。
ネットワーク環境の構成に関するOBEを参照するには、Webブラウザに次のURLを入力します。
https://apexapps.oracle.com/pls/apex/f?p=44785:24:::NO:24:P24_CONTENT_ID:16827