ヘッダーをスキップ
Oracle® Database Net Services管理者ガイド
12cリリース1 (12.1)
B71288-02
  ドキュメント・ライブラリへ移動
ライブラリ
製品リストへ移動
製品
目次へ移動
目次
索引へ移動
索引

前
 
次
 

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

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

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

接続確立の前提条件

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

  • データベース・サーバー

    • クライアントにアクセスできるネットワークでサーバーが実行中であること

    • Oracleデータベースがインストールされていること

    • リスナーが構成されていること

    • TCP/IPプロトコル・サポートがインストールされていること

  • クライアント・コンピュータ

    • データベース・サーバーにアクセスできるネットワークでクライアント・コンピュータが実行中であること

    • Oracleクライアントがインストールされていること

    • TCP/IPプロトコル・サポートがインストールされていること

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

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

ネットワークの可用性の確認

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

次の手順では、ネットワーク接続の確認方法について説明します。

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

    1. ハードウェア接続を確認するには、コマンドラインで次のコマンドを入力します。

      ping ip_address
      

      前述のコマンドで、ip_addressはデータベース・サーバー・コンピュータのIPアドレスです。たとえば次のように入力します。

      ping 192.0.2.203
      
    2. DNSまたはホスト名が正しく構成されていることを確認するには、コマンドラインで次のコマンドを入力します。

      ping host_name
      

      前述のコマンドで、host_nameはサーバーのホスト名です。

    3. サーバーのTCP/IP設定をテストするには、次のコマンドを入力します。

      ping 127.0.0.1
      
      ping6 ::1
      

      IPアドレス127.0.0.1は、ループバック・テスト用の標準のIPv4アドレスです。IPアドレス::1 (0: 0: 0: 0: 0: 0: 0: 1)は、ループバック・テスト用の標準のIPv6アドレスです。

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

    検証方法は、ネットワーク・プロトコルによって様々です。TCP/IPでは、PING、FTP、TELNETユーティリティを使用できます。

    クライアント・コンピュータがサーバーに接続できない場合、ネットワークのケーブル接続やネットワーク・インタフェース・カードが正しく接続されているかを確認します。これらの問題を解消するには、ネットワーク管理者に連絡してください。

Oracle Net ListenerとOracle Databaseサーバーの起動

Oracle Net ListenerとOracle Databaseサーバーは、データベース・サーバーが接続を受け取る順番で実行している必要があります。次の手順では、Oracle Netリスナーを起動する方法について説明します。

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

    lsnrctl
    LSNRCTL> START [listener_name]
    

    前述のコマンドで、listener_nameは、listener.oraファイルに定義されているリスナーの名前です。デフォルトの名前LISTENERを使用している場合、リスナーを指定する必要はありません。

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

  2. 次のようにデータベースを起動します。

    1. 次のコマンドを使用して、データベースに接続せずにSQL*Plusを起動します。

      SQLPLUS /nolog
      
    2. 次のコマンドを使用して、SYSDBAとしてデータベースに接続します。

      SQL> CONNECT username as sysdba
      

      パスワードの入力を求めるメッセージが表示されます。


      注意:

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

    3. 次のコマンドを使用して、データベースを起動します。

      SQL> STARTUP database_name
      

      前述のコマンドで、database_nameはデータベースの名前です。


      関連項目:

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

  3. リスナー制御ユーティリティと次のコマンドを使用して、リスナーへのデータベース・サービス登録が完了していることを確認します。

    LSNRCTL> SERVICES [listener_name]
    

    SERVICESコマンドは、データベースがサポートするサービスと、1つ以上の使用可能なサービス・ハンドラの一覧を示します。データベース・サービス登録が示されていない場合は、次のSQLコマンドを入力します。

    SQL> ALTER SYSTEM REGISTER
    

    関連項目:

    SERVICESコマンドの詳細は、「リスナーのサービスの監視」を参照してください。

Oracle Connection Managerの起動

Oracle Connection Managerがインストールされている場合は、次の手順に従ってOracle Connection Managerを起動します。

  1. 次のコマンドを使用して、Oracle Connection Manager Controlユーティリティ(CMCTL)を起動します。

    cmctl
    CMCTL> ADMINISTER [instance_name]
    

    前述のコマンドで、instance_nameは管理対象のOracle Connection Managerの名前です。cman.oraファイルを表示して、その名前を確認できます。ファイルは、ORACLE_HOME/network/adminディレクトリ内のOracle Connection Managerコンピュータ上にあります。

    Oracle Connection Managerは、インスタンス名を示すステータス・メッセージを表示し、まだインスタンスが起動していないことを知らせます。


    注意:

    引数にインスタンス名を設定しない場合は、Oracle Connection Managerに完全修飾ホスト名を設定します。これはデフォルトです。ADMINISTERコマンドを発行すると、CMCTLにより次のようにインスタンス名が表示されます。
    CMAN_fully_qualified_host_name
    

  2. 次のコマンドを使用して、管理対象として選択したOracle Connection Managerを起動します。

    cmctl> STARTUP
    

    インスタンスが起動したことがOracle Connection Managerで確認され、インスタンスのステータスが表示されます。

  3. 次のコマンドを使用して、Oracle Connection Manager Controlユーティリティを終了します。

    cmctl> EXIT
    

注意:

Microsoft Windowsの場合、Oracle Connection Managerは「コントロールパネル」からも起動できます。
  1. 「コントロールパネル」の「サービス」を選択します。

  2. OracleHOME_NAMECMan」サービスを選択し、「Start」をクリックします。

  3. 「サービス」ウィンドウの「閉じる」をクリックします。


データベースへの接続

Oracleデータベースには複数の方法により接続できます。表6-1は、データベースに接続する構文を示しています。

表6-1 データベースへの接続

接続のタイプ 接続構文 説明

コマンドラインから

コマンドラインからアプリケーションをデータベース・サーバーに接続させるための一般的な書式を次に示します。

tool username@connect_identifier

パスワードの入力を求めるメッセージが表示されます。このパスワードは暗号化されます。

たとえば、次のように指定します。

SQLPLUS system@sales
Enter password: password

ほとんどのOracleのツール製品は、オペレーティング・システムのコマンドラインを使用して接続できますが、他の方法でも接続できます。

ログイン画面から

username@connect_identifier

一部のツールには、ログインの代替形式としてログイン画面が用意されています。ユーザーがデータベース・サーバーにログインするには、ツールのログイン画面のユーザー名フィールドにユーザー名と接続識別子の両方を指定し、パスワード・フィールドにパスワードを入力します。

3GLアプリケーションから

exec sql connect :username identified by :password 

前述の接続要求で、:usernameおよび:passwordは3GLの変数です。これらの変数は、静的にまたはユーザーからの入力によってプログラム内で設定できます。データベース・サーバーに接続する場合、:username変数の値の書式は次のとおりです。

username@net_service_name 

:password変数には、接続先データベース・アカウントのパスワードが入ります。

OCIやプリコンパイラなど、3GLで作成されたアプリケーションは、クライアントからの直接データベース・アクセス用に中間層およびデータベース・アプリケーション開発者によって使用されます。

SQL*Plus内から

SQLPLUS /nolog
SQL> CONNECT username@net_service_name

たとえば、次のように指定します。

SQLPLUS /nolog
SQL> CONNECT scott@serverx
Enter password: password

前述のコマンドで、usernamepasswordは、データベース・ユーザーとパスワードで、net_service_nameはネットワーク・サービス名です。

一部のOracleツールには、ツールを終了せずに、異なるユーザー名を指定してデータベースに接続できるコマンドがあります。

他のOracleのツール製品では、この説明とは異なる独自の機能やインタフェースに固有の方法が使用されます。たとえば、Oracle CDE Toolsでは、ログイン・ボタンと、ユーザー名、パスワードおよびリモート・データベースIDのフィールドが使用されます。


簡易接続を使用したデータベースへの接続

ネットワークの可用性の確認に関する項で説明しているように、ネットワーク接続が確認された場合、簡易接続ネーミング・メソッドを使用してデータベースに接続します。このネーミング・メソッドを利用すると、データベースへのTCP/IP接続を簡単に行えるようになります。これは、クライアントがデータベースのホスト名の他にオプションのポートとサービス名を使用してデータベースに接続できるようにすることで、ホスト・ネーミング・メソッドの機能を拡張します。簡易接続を使用して接続する構文は、次のとおりです。

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

注意:

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

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

SQLPLUS /nolog
SQL> CONNECT username@"host/db_name"
SQL> Enter password: password

注意:

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


関連項目:

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