前のトピック: SNMP テスト次のトピック: TCP 接続テスト


SQL クエリ テスト

SQL クエリ テストでは、JDBC をサポートして SQL クエリを実行する任意のデータベースに接続するために必要な時間をモニタリングします。 これは、Oracle、Microsoft SQL Server、およびその他のデータベースのクエリをサポートしています。

SQL クエリ テストの作成を開始する前に、適切な JDBC ドライバが利用可能であることを確認します。 必要に応じて、テストするデータベースに固有の JDBC ドライバ ファイルをインストールします。

SystemEDGE インストール ディレクトリ下の jre/lib/ext ディレクトリに JAR ファイルをコピーする必要があります(/opt/SystemEDGE/jre/lib/ext [UNIX] またはドライブ:¥sysedge¥jre¥lib¥ext [Windows] など)。 JDBC ドライバの jar ファイルを取得するには、データベースを配布する会社のコーポレート Web サイトを確認してください。

SQL JDBC ドライバの可用性を確認する例

  1. インストール パス/SystemEDGE/jre/lib/ext ディレクトリに移動します。
  2. sqljdbc.jar (JRE バージョン 1.5 以前)または sqljdbc4.jar (JRE バージョン 1.6 以降)が利用可能であるかどうかを確認します。

SQL JDBC が利用可能でない場合は、以下の手順に従います。

  1. microsoft.com/downloads から SQL JDBC ドライバをダウンロードします。
  2. ダウンロードしたドライバ パッケージを展開し、sqljdbc.jar (JRE バージョン 1.5 以前)または sqljdbc4.jar (JRE バージョン 1.6 以降)をインストール パス/SystemEDGE/jre/lib/ext ディレクトリにコピーします。
  3. SystemEDGE を再起動して新しい Java クラスをロードします。
  4. CA Server Automation の[ポリシー設定]などを使って、新しい SQL テストをセットアップします。 必要に応じて、展開した JDBC パッケージのヘルプ システムも参照してください。

オプションと引数

SQL クエリ テストには、以下のテスト固有のオプションと引数が必要です。

これらのオプションと引数は、テストを作成または変更するときに指定します。

例 1: Oracle データベースのテスト

この例を使用して、Oracle データベースにログインして 300 秒ごとに 1 度ユーザ テーブルからテーブル名を取得するクエリを実行するテストを作成します。 テストでは、正常に応答するまで最大 10 秒待機し、最後の 1800 秒(30 分)間のレスポンス時間および可用性の統計を算出します。

ポリシー内に新しいテストを作成する方法

  1. [テスト モニタ]ツールバーの[+](新規)をクリックします。

    [新規テスト]ペインが表示されます。

  2. [テスト タイプ]リストで[SQL クエリ]を選択します。
  3. [説明]フィールドに「SQLQuery_OracleTest」を指定します。
  4. [テスト名]フィールドに「Oracle Test」を指定します。
  5. [テスト間隔]フィールドに「300」を指定します。
  6. [テスト タイムアウト]フィールドに「10」を指定します。
  7. [間隔当たりのサンプル数]フィールドに「1」を指定します。
  8. [統計ウィンドウ]フィールドに「1800」を指定します。
  9. [データベース タイプ]フィールドで[Oracle]を選択します。
  10. [SQL データベース サーバ]フィールドで「OracleTest」を指定します。
  11. [ポート]フィールドで、デフォルトの「1521」を受け入れます。
  12. [ユーザ名]フィールドに「OracleUser」と入力します。
  13. [パスワード]フィールドに「Oracle123」と入力します。
  14. [データベース名]フィールドに、テストするデータベースの名前を指定します(MYDB など)。
  15. [クエリ]フィールドに、「table_name from user_tables」を指定します。
  16. [テストの保存]をクリックします。

変更をコミットすると、SRM によって以下のようなエントリが svcrsp.cf ファイルに追加されます。

{
index=11 
type=sql
desc="SQLQuery_OrcaleTest" 
dest="OracleTest:1521" 
username="OracleUser" 
encoded=yes 
password="aW1vdXJhdmlldg" 
args="query=select table_name from user_tables&dbtype=oracle&dbname=MYDB"
interval=300 
samples=1 
timeout=10 
window=1800 
tos=0 
limit=0 
status=active 
name="Oracle Test"
class=""
context=""
flags="1"
loglevel=2
}

例 2: Microsoft SQL Server データベースのテスト

この例を使用して、Microsoft SQL データベースにログインして 60 秒ごとに 1 度ユーザ テーブルからテーブル名を取得するクエリを実行するテストを作成します。 このテストでは、正常に応答するまで最大 10 秒待機し、最後の 120 秒間のレスポンス時間および可用性の統計を算出します。

ポリシー内に新しいテストを作成する方法

  1. [テスト モニタ]ツールバーの[+](新規)をクリックします。

    [新規テスト]ペインが表示されます。

  2. [テスト タイプ]リストで[SQL クエリ]を選択します。
  3. [説明]フィールドに「SQLQuery_SQLServer」を指定します。
  4. [テスト名]フィールドに「SQL Test」を指定します。
  5. [テスト間隔]フィールドに「60」を指定します。
  6. [テスト タイムアウト]フィールドに「10」を指定します。
  7. [間隔当たりのサンプル数]フィールドに「1」を指定します。
  8. [統計ウィンドウ]フィールドに「120」を指定します。
  9. [SQL データベース サーバ]フィールドで[MSSQL]を選択します。
  10. [ポート]フィールドで、デフォルトの「1433」を受け入れます。
  11. [ユーザ名]フィールドに「SQLUser」と入力します。
  12. [パスワード]フィールドに「SQL123」と入力します。
  13. [データベース名]フィールドに、テストするデータベースの名前を指定します(Northwind など)。
  14. [クエリ]フィールドに「select * from categories」を指定します。
  15. [テストの保存]をクリックします。

変更をコミットすると、SRM によって以下のようなエントリが svcrsp.cf ファイルに追加されます。

{
index=11 
type=sql
desc="SQLQuery.SQLServer" 
dest="mySQLServer:1433" 
username="SQLUser" 
encoded=yes 
password="bWnvTRPJhdmll" 
args="query=select * from categories"&dbtype=mssql&dbname=Northwind" 
interval=60 
samples=1 
timeout=10 
window=120 
tos=0 
limit=0 
status=active 
name="SQL Test"
class=""
context=""
flags="1"
loglevel=1
}

SQL クエリ テストの実行時に発生する可能性があるエラーについては、「 SQL クエリ テスト エラー コード」を参照してください。