ヘッダーをスキップ
Oracle Database Net Services管理者ガイド
11g リリース1(11.1)
E05725-04
  目次
目次
索引
索引

戻る
戻る
 
次へ
次へ
 

2 Oracle Net接続のクイック・スタート

この章では、一般的で単純な構成のTCP/IPネットワークによるクライアント・アプリケーションとデータベース接続について、初心者でも設定およびテストできるように説明します。

この章の内容は、次のとおりです。

2.1 接続確立の前提条件

このクイック・スタート・ガイドのタスクは、クライアント・コンピュータとデータベース・サーバーとのTCP/IP接続について示します。データベース・サーバーとクライアント・コンピュータは次の条件を満たす必要があります。

2.2 タスク1: ネットワークの可用性の確認

Oracle Netをクライアント・コンピュータとデータベース・サーバーとの接続に使用する前に、クライアント・コンピュータがデータベース・サーバーのコンピュータと正常に通信できるかどうかを確認します。ネットワークの接続性を評価しておくと、ネットワークに起因するエラーを排除できます。

ネットワークの接続性を確認する手順は次のとおりです。

  1. データベース・サーバーのコンピュータが、ループバック・テストによって自分自身と通信できることを確認します。

    ループバック・テストは、データベース・サーバーからそのデータベース・サーバーに戻る接続です。多数のネットワーク・プロトコルが、ネットワーク接続をテストする方法を用意しています。ユーティリティPINGは、TCP/IPネットワークに使用できます。

    TCP/IPネットワークでは、各コンピュータは一意のIPアドレスを持ちます。ドメイン・ネーム・システム(DNS)などの名前解決サービスは、そのホスト名を持つコンピュータのIPアドレスをマップするために使用します。名前解決サービスを使用しない場合、マッピングは通常hostsと呼ばれるファイルに格納されるため、集約化して保守されます。このファイルは、UNIXでは/etcディレクトリに、Windowsでは\winntディレクトリにあります。たとえば、sales-serverという名前のデータベース・サーバーのコンピュータのエントリは、次のようになります。

    #IP address of server     host name       alias
    192.0.2.203               sales-server    sales.us.example.com
    

    PINGを使用するには、コマンドラインから次のように入力します。

    ping database_server_host
    

    database_server_hostは、データベース・サーバーのコンピュータのホスト名です。たとえば、次のように指定します。

    ping sales-server
    

    ループバックに失敗した場合は、そのデータベース・サーバーのIPアドレスでもう一度試してください。たとえば、次のように指定します。

    ping 192.0.2.203
    
  2. クライアント・コンピュータがデータベース・サーバーのコンピュータと正常に通信できることを確認します。

    この方法は、ネットワーク・プロトコルによって様々です。TCP/IPでは、PING、FTP、TELNETユーティリティを使用できます。クライアント・コンピュータがサーバーに接続できない場合、ネットワークのケーブル接続やネットワーク・インタフェース・カードが正しく接続されているかを確認します。これらの問題を解消するには、ネットワーク管理者に連絡してください。

2.3 タスク2: Oracle Net ListenerとOracle Databaseサーバーの起動

Oracle Net ListenerとOracle Databaseサーバーは、データベース・サーバーが接続を受け取る順番で実行している必要があります。

  1. リスナー制御ユーティリティを使用してリスナーを起動します。コマンドラインから、次のように入力します。

    lsnrctl
    LSNRCTL> START [listener_name]
    

    listener_nameは、listener.oraファイルで定義したリスナーの名前です。LISTENERという名前のデフォルトを使用している場合は、リスナーを識別する必要はありません。

    リスナーが正常に起動したことを示すステータス・メッセージが表示されます。

  2. データベースを起動します。

    1. データベースに接続せずにSQL*Plusを起動します。

      sqlplus /nolog
      
    2. SYSDBAとしてデータベースに接続します。

      SQL> CONNECT username AS SYSDBA
      

      たとえば、SYSTEMは、SYSDBAユーザーです。パスワードの入力を求めるメッセージが表示されます。


      注意:


      この機能の例示を単純化するため、この例では、デプロイされたシステムで通常使用されるパスワード管理技術を実行していません。本番環境では、Oracle Databaseのパスワード管理ガイドラインに従い、サンプル・アカウントをすべて無効にしてください。パスワード管理ガイドラインおよびその他のセキュリティに関する推奨事項については、『Oracle Databaseセキュリティ・ガイド』を参照してください。

    3. 次のように、データベース名とパラメータ・ファイルのフルパスを指定して、STARTUPコマンドを入力します。

      SQL> STARTUP database_name pfile=file
      

      PFILEオプションを使用しない場合、Oracleデータベースは標準の初期化パラメータ・ファイルを使用します。このファイルは、UNIXプラットフォーム上では$ORACLE_HOME/dbsディレクトリ、Windows上では、%ORACLE_HOME%\databaseディレクトリにあります。データベース名を指定しない場合、データベースは、初期化パラメータ・ファイルで指定されているDB_NAMEパラメータの値を使用します。


      関連項目:

      データベースの起動の詳細は、『Oracle Database管理者ガイド』を参照してください。

  3. リスナーへのデータベース・サービス登録が、完了していることを確認します。リスナー制御ユーティリティから、次のように入力します。

    LSNRCTL> SERVICES [listener_name]
    

    SERVICESコマンドは、データベースがサポートするサービスと、1つ以上の使用可能なサービス・ハンドラの一覧を示します。

2.4 タスク3: データベースに接続するためのクライアントの構成

ネットワークの接続が確認されると、簡易接続ネーミングを使用して、データベースに接続できます。


注意:


Oracle Databaseでは、Oracle Database 10gからOracle Namesの使用をサポートしていません。 Oracle Database 11gクライアントおよびデータベースでは、LDAPプロキシを含めて、Oracle Namesで名前を解決することはできません。Oracle8iおよびOracle9iのクライアントでは、引き続きOracle Namesを使用してOracle Database 11gデータベースの名前を解決できますが、Oracle Database 11gの新機能を活用するために、LDAPに移行することをお薦めします。

簡易接続ネーミング・メソッドを使用すると、TCP/IP環境でtnsnames.oraファイル内をサービス名で検索する必要がなくなります。このネーミング・メソッドを利用することで、データベースへのTCP/IP接続を簡単に行えるようになります。これにより、クライアントは、データベースのホスト名に加え、次に示すようにオプションのポートやサービス名を使用してデータベース・サーバーに接続できるため、ホスト・ネーミング・メソッドの機能を拡張できます。

CONNECT username@host[:port][/service_name][:server][/instance_name]

注意:


Oracle Call Interfaceのマニュアルでは、serverconnect_typeと呼ばれています。

Oracle Databaseサーバーのインストールを「標準」モードで実行した場合、oracleインスタンスで使用されるデフォルトのサービス名はORCLであり、次の簡易接続構文を使用してそのインスタンスに接続できます。

CONNECT username@host/ORCL
Enter password: password

関連項目:


このメソッドの使用方法の詳細は、「簡易接続ネーミング・メソッドの使用」を参照してください。

Oracle Net Configuration Assistantを使用した代替接続

簡易接続ネーミング・メソッドを使用しない場合は、Oracle Net Configuration Assistantを使用して、データベース・サービスのネット・サービス名、つまり単純な名前を作成できます。ネット・サービス名は、接続記述子に、つまり、データベースのネットワーク・アドレスとデータベース・サービスの名前に解決されます。クライアントはネット・サービス名を使用してデータベースに接続します。

次の例に示すネット・サービス名は、salesと呼ばれ、sales.us.example.comと呼ばれるデータベースの接続記述子にマップされます。 クライアントは、sales.us.example.comへの接続にマップされているsalesを使用できます。

sales=
 (DESCRIPTION=
   (ADDRESS=(PROTOCOL=tcp)(HOST=sales-server)(PORT=1521))
   (CONNECT_DATA=
     (SERVICE_NAME=sales.us.example.com)))

ネット・サービス名でクライアントを構成する手順は次のとおりです。

  1. Oracle Net Configuration Assistantを起動します。

    「ようこそ」ページが表示されます。

  2. 「ローカル・ネット・サービス名構成」を選択します。

  3. 「次へ」をクリックします。

    「ネット・サービス名の構成」ページが表示されます。

  4. 「追加」をクリックしてから「次へ」をクリックします。

    「ネット・サービス名の構成」ページの「データベース・バージョン」が表示されます。

  1. 宛先サービスがOracle9iまたはOracle8iのデータベースの場合は、Oracle8i以上のデータベースまたはサービスを選択します。宛先サービスがOracle8リリース8.0データベースの場合は、Oracle8リリース8.0のデータベースまたはサービスを選択します。

  2. 「次へ」をクリックします。

    「ネット・サービス名の構成」ページの「サービス名」が表示されます。

  3. データベースを識別する名前を入力します。

    サービス名は、データベースの作成時に定義されます。サービス名が不明な場合は、データベースを作成したデータベース管理者に問い合せてください。

  4. 「次へ」をクリックします。

    「ネット・サービス名の構成-プロトコルの選択」ページが表示されます。

  5. リスナーがリスニングするように構成されているプロトコルを選択します。このプロトコルも、クライアント上にインストールする必要があります。デフォルトでは、リスナーはTCP/IPでリスニングを実行するように構成されています。

  6. 「次へ」をクリックします。

    選択したプロトコルに適切なページが表示されます。

  7. 表示されたフィールドで選択したプロトコルに対して適切なプロトコル・パラメータを入力し、「次へ」をクリックします。

    「ネット・サービス名の構成」ページの「テスト」が表示されます。

  8. 「はい。テストを実行します。」をクリックします。

    テスト中、Oracle Net Configuration Assistantは、リモート・データベース・サービスに接続し、接続を確立してから終了します。

    テストが成功すると、次のメッセージが表示されます。

    Connecting...Test successful.
    

    テストが失敗した場合、原因として考えられることは次のとおりです。

    • デフォルトのユーザー名(scott)とパスワード(tiger)が有効ではない

    • プロトコル・アドレスの情報がリスナーの情報と一致していない

    • リスナーが動作していない

    • 接続先データベース・サービスが停止している

    問題の診断に基づいて、次のいずれかのタスクを実行します。

    • 「ログインの変更」をクリックして、接続に使用するユーザー名とパスワードを変更します。

    • 「前へ」をクリックして、プロトコル・アドレスの情報を検討します。

    • 「タスク2: Oracle Net ListenerとOracle Databaseサーバーの起動」で説明されているように、サーバー上でリスナーまたはOracle Databaseを起動します。

  9. 「次へ」をクリックします。

    「ネット・サービス名の構成」ページの「ネット・サービス名」が表示されます。

  10. デフォルトのネット・サービス名を受け入れるか、別のネット・サービス名を「ネット・サービス名」フィールドに入力します。入力する名前は、クライアントを一意に識別できる必要があります。

  11. 「次へ」をクリックします。

    「ネット・サービス名の構成-別のネット・サービス名」ページが表示されます。

  12. 「いいえ」をクリックしてから「次へ」をクリックします。

    「ネット・サービス名の構成が終了しました」ページが表示されます。

  13. 「次へ」をクリックしてから「終了」をクリックします。

2.5 タスク4: データベースへの接続

クライアント・コンピュータから、次のようにデータベース・サーバーに接続します。

  1. SQL*Plusを起動します。

    sqlplus
    
  2. 次のようにデータベースに接続します。

    CONNECT username@net_service_name
    Enter password: password
    

    ここで、usernamepasswordは、データベース・ユーザーとパスワードです。また、net_service_name「タスク3: データベースに接続するためのクライアントの構成」で作成したネット・サービス名です。