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 ドライバの可用性を確認する例
SQL JDBC が利用可能でない場合は、以下の手順に従います。
オプションと引数
SQL クエリ テストには、以下のテスト固有のオプションと引数が必要です。
注: Oracle と MSSQL の場合、SRM と一緒にインストールされるデフォルトの JDBC ドライバを使用して、動的な SQL 接続文字列が作成されます。 ダウンロードしたその他の JDBC ドライバの場合は、データベース ベンダーに関係なく、ベンダーからドライバの Java クラス名および適切な SQL 接続文字列を取得して、特定のキーワードを指定する必要があります(下記参照)。
注: IPv6 アドレスを使用できますが、角かっこで囲む必要があります([0aff::230:6eff:fe4b:51db]:8080 など)。 「0aff::230:6eff:fe4b:51db」は IPv6 アドレスを表し、「8080」はポート番号を表します。
例:
com.microsoft.sqlserver.jdbc.SQLServerDriver oracle.jdbc.OracleDriver com.mysql.jdbc.Driver
注: SQL 接続文字列の形式は、各ベンダーから支給されるデータベース ドライバによって異なります。 データベース ベンダーの Web サイトにアクセスして JDBC ドライバの適切な接続文字列を取得するか、または JDBC ドライバのマニュアルを参照してください。
使用しているデータベース ベンダーの接続文字列には、一連のフィールドが含まれます。その中のいくつかは明示的なキーワード(unameValue、pwdValue、hostnameValue、portValue など)に置き換えることができます。 GUI に接続文字列を入力する場合は、「unameValue」および「pwdValue」を入力して、エージェントが置換できるようにします。 ベンダー固有の接続文字列は、キーワードを配置する接続の場所を規定しています (Oracle または MSSQL 用のデフォルトの JDBC ドライバを使用する場合、これは SRM によって自動的に行われます)。テストの実行時、接続文字列内の以下の SRM キーワードは指定された値に置換されます。
例:
jdbc:oracle:thin:unameValue/pwdValue@hostnameValue:portValue:orcl (connects with orcl) jdbc:sqlserver://hostnameValue:portValue;databaseName=vasdb;user=unameValue;password=pwdValue (connects with vasdb) jdbc:sqlserver://hostnameValue:portValue;user=unameValue;password=pwdValue (connects with default database) jdbc:mysql://hostnameValue:portValue/mydb?user=unameValue&password=pwdValue (connects with mydb)
これらのオプションと引数は、テストを作成または変更するときに指定します。
例 1: Oracle データベースのテスト
この例を使用して、Oracle データベースにログインして 300 秒ごとに 1 度ユーザ テーブルからテーブル名を取得するクエリを実行するテストを作成します。 テストでは、正常に応答するまで最大 10 秒待機し、最後の 1800 秒(30 分)間のレスポンス時間および可用性の統計を算出します。
ポリシー内に新しいテストを作成する方法
[新規テスト]ペインが表示されます。
変更をコミットすると、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 秒間のレスポンス時間および可用性の統計を算出します。
ポリシー内に新しいテストを作成する方法
[新規テスト]ペインが表示されます。
変更をコミットすると、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 クエリ テスト エラー コード」を参照してください。
|
Copyright © 2013 CA.
All rights reserved.
|
|