15.2 TNSPINGユーティリティを使用したクライアントからの接続テスト

TNSPINGユーティリティでは、Oracle Netネットワーク上のサービスに対するリスナーに正常に到達できるかどうかを判定します。

TNSPINGユーティリティを使用して、クライアントからサーバー(またはサーバーから別のサーバー)に正常に接続できる場合、サーバーに対応するOracleリスナーへのSQLNET接続を確立するまでにかかる推定ラウンドトリップ時間(ミリ秒)が表示されます。

接続に失敗した場合は、発生したエラーを記述するメッセージが表示されます。これによって、データベース接続に対するオーバーヘッドなしで発生中のネットワーク・エラーを参照できます。

接続をテストするには、次のコマンドを使用します。
tnsping net_service_name count

前述のコマンドでは、次の引数が使用されます。

  • net_service_name: NISなど、tnsnames.oraファイルまたは使用中のネーム・サービスに存在する名前にする必要があります。

  • count: プログラムがサーバーへの到達を試行する回数を指定します。この引数はオプションです。

指定されたネットワーク・サービス名がデータベース名の場合、TNSPINGは対応するリスナーへの接続を試行します。実際は、データベースが実行中かどうかは判別されません。SQL*Plusを使用して、データベースへの接続を試みます。

次に、TNSPINGの例を示します。

ノート:

プラットフォームによってインタフェースが異なる場合がありますが、プログラムは同じ引数を受け入れられます。TNSPINGを呼び出すと、正しいインタフェース要件が表示されます。

例15-1は、TNSPINGコマンドを使用してsalesのネットワーク・サービス名で、データベースに対してリスナーを確認している例を示しています。

例15-1 TNSPINGによるリスナーの確認

TNSPING sales

これによって、次のメッセージが出力されます。

TNS Ping Utility for Linux: Version 23.4.0.0.0 - Production on 21-MAR-2024 

Copyright (c) 1997, 2024 Oracle Corporation.  All rights reserved.

Used parameter files:
Used TNSNAMES adapter to resolve the alias
Attempting to contact (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL =
TCP)(HOST = sales-server)(PORT = 1521))) (CONNECT_DATA = (SERVICE_NAME =
sales.us.example.com)))
OK (10 msec)

salesデータベースに対するリスナーが使用できるかどうかを判別し、TNSPINGが接続を8回まで試行するように指定するには、次の構文を使用します。

tnsping sales 8

このコマンドによって、次のメッセージが出力されます。

TNS Ping Utility for Linux: Version 23.4.0.0.0 - Production on 21-MAR-2024 

Copyright (c) 1997, 2024 Oracle Corporation.  All rights reserved.

Used parameter files:

Used TNSNAMES adapter to resolve the alias
Attempting to contact (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL =
TCP)(HOST = sales-server)(PORT = 1521))) (CONNECT_DATA = (SERVICE_NAME =
sales.us.example.com)))
OK (10 msec)
OK (0 msec)
OK (10 msec)
OK (0 msec)
OK (10 msec)
OK (10 msec)
OK (10 msec)
OK (0 msec)

例15-2は、無効なネットワーク・サービス名を使用してTNSPINGがチェックを試行する例を示しています。

例15-2 TNSPINGを使用した無効なネット・サービス名の確認

tnsping badname

この試行では、次のメッセージが出力されます。

TNS Ping Utility for Linux: Version 23.4.0.0.0 - Production on 21-MAR-2024 

Copyright (c) 1997, 2024 Oracle Corporation.  All rights reserved.

Used parameter files:

TNS-03505: Failed to resolve name

例15-3は、TNSPINGを使用して、名前が有効であっても、リスナーが見つからない(たとえば、リスナーが起動されていない)アドレスに解決される場合の出力例を示しています。

例15-3 TNSPINGを使用したリスナーなしの有効なネット・サービス名の確認

tnsping sales

TNS Ping Utility for Linux: Version 23.4.0.0.0 - Production on 21-MAR-2024 

Copyright (c) 1997, 2024 Oracle Corporation.  All rights reserved.

Used parameter files:
Used TNSNAMES adapter to resolve the alias
Attempting to contact (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL =
TCP)(HOST = 10.9.7.5)(PORT = 1521))) (CONNECT_DATA = (SERVICE_NAME =
sales.us.example.com)))
TNS-12541: TNS:Cannot connect. No Listener at host 10.9.7.5 port 1521