ネットワークを介してデータベースサーバに接続され、前記データベースサーバにおいて実行されるSQLStructuredQueryLanguageの実行情報を取得する情報処理装置であって、前記データベースサーバに格納され、監視対象となるデータベースのスキーマ情報を取得するスキーマ情報取得部と、前記データベースサーバが有するキャッシュに記憶された、前記スキーマ情報に示されたテーブルに対して行われたSQLの実行情報を取得するSQL実行情報取得部と、前記スキーマ情報取得部と前記SQL実行情報取得部とを所定のタイミングで定期的に実行させる制御部と、を備えることを特徴とする情報処理装置。前記スキーマ情報を記憶するためのDBスキーマ情報記憶部をさらに備え、前記スキーマ情報取得部は、前記監視対象となるデータベースに含まれる全てのテーブルについてのスキーマ情報を取得し、前記DBスキーマ情報記憶部に記憶させ、前記制御部は、前記DBスキーマ情報記憶部に記憶された全てのテーブルについてのスキーマ情報の取得を、前記スキーマ情報取得部に対して、所定のタイミングで定期的に実行させる、ことを特徴とする請求項1に記載の情報処理装置。前記SQL実行情報を記憶するためのSQL実行情報記憶部をさらに備え、前記SQL実行情報取得部は、前記データベースサーバが有するキャッシュに記憶されている全てのSQLについてSQLの実行情報を取得し、前記SQL実行情報記憶部に記憶させ、前記制御部は、前記SQL実行情報記憶部に記憶された全てのSQLについてSQLの実行情報の取得を、前記SQL実行情報取得部に対して、所定のタイミングで定期的に実行させる、ことを特徴とする請求項1または2に記載の情報処理装置。前記監視対象となるデータベースの監視時刻と、前記所定のタイミングを定めた監視間隔とを記憶する監視記憶部をさらに備え、前記SQL実行情報取得部は、取得した前記SQLの実行情報に含まれるSQL実行時刻が、前記監視時刻と前記監視間隔とによって定まる前回監視時刻以降である場合にのみ前記SQLの実行情報を取得する、ことを特徴とする請求項1~3のいずれか1項に記載の情報処理装置。前記SQL実行情報取得部は、過去に前記SQLの実行情報を取得しているか否かを判定し、過去に前記SQLの実行情報を取得していると判定した場合には前記SQLの実行情報を上書き更新し、過去に前記SQLの実行情報を取得していないと判定した場合には前記SQLの実行情報を追加更新する、ことを特徴とする請求項4に記載の情報処理装置。前記SQL実行情報取得部が取得した前記SQL実行情報に含まれるアクセスパスに基づいて、前記テーブルに対してフルスキャンされたテーブルに関する情報と、前記SQL実行情報と前記スキーマ情報とに基づいて定まるインデックス情報と、を含む監視結果を示すレポートを出力するレポート生成部、をさらに備えることを特徴とする請求項1~5のいずれか1項に記載の情報処理装置。ネットワークを介してデータベースサーバに接続され、前記データベースサーバにおいて実行されるSQLの実行情報を取得する情報処理装置で行われるSQL実行情報取得方法であって、前記データベースサーバに格納され、監視対象となるデータベースのスキーマ情報を取得するスキーマ情報取得ステップと、前記データベースサーバが有するキャッシュに記憶された、前記スキーマ情報に示されたテーブルに対して行われたSQLの実行情報を取得するSQL実行情報取得ステップと、を含み、前記スキーマ情報取得ステップと前記SQL実行情報取得ステップとを所定のタイミングで定期的に実行させる、ことを特徴とするSQL実行情報取得方法。ネットワークを介してデータベースサーバに接続され、前記データベースサーバにおいて実行されるSQLの実行情報を取得する情報処理装置で行われるSQL実行情報取得プログラムであって、前記データベースサーバに格納され、監視対象となるデータベースのスキーマ情報を取得するスキーマ情報取得ステップと、前記データベースサーバが有するキャッシュに記憶された、前記スキーマ情報に示されたテーブルに対して行われたSQLの実行情報を取得するSQL実行情報取得ステップと、をコンピュータに実行させ、前記スキーマ情報取得ステップと前記SQL実行情報取得ステップとを所定のタイミングで定期的に実行させる、ことを特徴とするSQL実行情報取得プログラム。上述した特許文献1等の従来技術においては、データベースのトレース機能を用いた場合、簡単にSQL等の実行情報を取得することができ、データベースの性能についての原因を調査する場合に有効な情報を得ることができるというメリットがあった。しかしながら、一般的には、トレース機能を実行させる場合にはデータベースを常に監視する必要があり、また、トレース機能により取得された情報のレポーティングをデータベースサーバ内で実行しているため、データベースに高い負荷をかけてしまう。その結果、データベースサーバに対するレスポンスの低下等が生じてしまうため、本番環境のシステムで使用中のデータベースに対してトレース機能を実行させることが難しいという問題があった。本発明は、上記に鑑みてなされたものであって、データベースで処理されているSQL等の実行情報を低負荷で取得することが可能な情報処理装置、SQL実行情報取得方法、及びSQL実行情報取得プログラムを提供することを目的とする。上述した課題を解決し、目的を達成するために、本発明にかかる情報処理装置は、ネットワークを介してデータベースサーバに接続され、前記データベースサーバにおいて実行されるSQLStructuredQueryLanguageの実行情報を取得するクライアントコンピュータであって、前記データベースサーバに格納され、監視対象となるデータベースのスキーマ情報を取得するスキーマ情報取得部と、前記データベースサーバが有するキャッシュに記憶された、前記スキーマ情報に示されたテーブルに対して行われたSQLの実行情報を取得するSQL実行情報取得部と、前記スキーマ情報取得部と前記SQL実行情報取得部とを所定のタイミングで定期的に実行させる制御部と、を備えることを特徴とする。また、本発明は、上記情報処理装置で行われるSQL実行情報取得方法、及びSQL実行情報取得プログラムである。本発明によれば、データベースで処理されているSQL等の実行情報を低負荷で取得することが可能な情報処理装置、SQL実行情報取得方法、及びSQL実行情報取得プログラムを提供することができるという効果を奏する。以下に添付図面を参照して、本発明にかかる情報処理装置、SQL実行情報取得方法、及びSQL実行情報取得プログラムの実施の形態を詳細に説明する。図1は、本発明の実施の形態におけるデータベース情報取得システム1000の構成を示す図である。図1に示すように、データベース情報取得システム1000は、データベースDBサーバ100と、クライアントコンピュータ200とを有し、これらが互いにネットワーク300により接続されている。なお、ネットワーク300は、LANLocalAreaNetworkやWANWideAreaNetwork等の一般的なセットワークである。後述するように、データベース情報取得システム1000では、クライアントコンピュータ200は、ネットワーク300を介してデータベースサーバ100が有する監視対象となっているデータベース110で実行されたSQLの実行情報を所定のタイミング例えば、週1日夜間等のタイミングで定期的に取得する。データベース情報取得システム1000において実行される各種の処理についてはフローチャートを用いて後述するが、大きく分けて、監視対象となっているデータベースのスキーマ情報を取得する処理スキーマ情報取得処理と、監視対象となっているデータベースに対して実行されたSQLの実行情報を取得する処理SQL実行情報取得処理と、データベースの監視結果を出力する処理結果レポート出力処理とから構成されている。データベースサーバ100は、監視対象となるデータベース100を記憶するサーバである。データベースサーバ100は、例えば、RDBMSRelationalDataBaseManagementSystemによって管理されたRDB形式のデータベース110を記憶する。なお、特に図示していないが、データベースサーバ100は、データベース110を記憶するためのHDDHardDiskDrive等から構成される記憶装置や、RDBMSを実行するためのCPUCentralProcessingUnit等から構成される制御部を有している。クライアントコンピュータ200は、記憶部210と、制御部220と、を有して構成されている。記憶部210は、DBスキーマ情報メモリ211と、SQL実行情報メモリ212と、を有している。DBスキーマ情報メモリ211は、後述するスキーマ情報取得部221が取得したデータベースのスキーマ情報を記憶するものである。図2は、DBスキーマ情報メモリ211が格納する情報の構成例を示す図である。図2に示すように、DBスキーマ情報メモリ211は、データベースに記憶されているテーブル名と、そのテーブル名のテーブルに格納されているデータの件数であるテーブルデータ件数と、データベースに定義されているそのテーブルのインデックスを示すインデックス名とが対応付けて記憶されている。これらの各情報は、後述するスキーマ情報取得処理が実行されることによって格納される。続いて、図1に戻って、SQL実行情報メモリ211について説明する。図3は、SQL実行情報メモリ211が格納する情報の構成例を示す図である。図3に示すように、SQL実行情報メモリ211は、実行されるSQLを識別するためのSQL識別子と、そのSQLの全文であるSQLテキストと、そのSQLの実行にかかるコストを示すSQLコストと、そのSQLが最後に実行された時刻を示す最終実行時刻と、そのSQLが過去に実行された回数を示す実行回数と、そのSQL実行時に検索された行数の平均を示す平均検索行数と、そのSQLの解析実行フェッチにかかる平均処理時間を示す平均処理時間と、そのSQL実行時にソートが行われた回数を示すソート回数と、そのSQL実行時にフェッチが行われた回数を示すフェッチ回数と、そのSQL実行時にディスクからデータを読込んだ平均回数を示す平均ディスク読み込数と、そのSQL実行時にバッファからデータを読込んだ平均回数を示す平均バッファ読み込数と、そのSQLを発行した発行元のクライアントコンピュータ200のホスト名と、そのクライアントコンピュータ100の端末名と、そのSQLを発行した発行元のプログラム名と、そのSQLが実行される際のアクセスパスと、が対応付けて記憶されている。さらに、上述したアクセスパスには、そのSQLがデータベースオブジェクトに対して行う操作内容コマンド等を示すオペレーションと、その操作対象となるデータベースオブジェクトの名称を示すオブジェクト名と、そのデータベースオブジェクトのタイプテーブル、インデックス等を示すオブジェクトタイプと、そのオペレーションにかかるコストと、そのオペレーションにより絞り込まれるデータ件数と、そのオペレーションにより絞り込まれるデータのバイト数とが含まれ、これらが対応付けて記憶されている。続いて、図1に戻り、制御部220について説明する。制御部220は、CPU等の演算装置から構成され、後述する各種の処理を実行する。図1に示すように、制御部220は、データベースサーバ100に記憶されているデータベース110についてのスキーマ情報を取得するスキーマ情報取得部221と、そのデータベース110に対するSQLの実行情報を取得するSQL実行情報取得部222と、取得されたSQL実行情報についての結果レポートを出力するレポート生成部223と、を有して構成されている。これらの各部が行う具体的な処理については、フローチャートを用いて後述する。なお、クライアントコンピュータ200が有する上述した各部は、スキーマ情報取得部221、SQL実行情報取得部222、レポート生成部223、および制御部220の各機能を実現するためのソフトウェアプログラムにより実行される。これらのソフトウェアプログラムは、例えば、上述した各部を含むモジュール構成となっており、実際のハードウェアとしては、CPU等の制御部がHDD等の記録装置からこれらのソフトウェアプログラムを読み出して実行することにより、上記各部が主記憶装置上にロードされ、スキーマ情報取得部221、SQL実行情報取得部222、レポート生成部223、および制御部220の各部が主記憶装置上に生成されるようになっている。また、上述したソフトウェアプログラムは、インストール可能な形式又は実行可能な形式のファイルでCD-ROM、フレキシブルディスクFD、CD-R、DVDDigitalVersatileDisc等のコンピュータで読み取り可能な記録媒体に記録されて提供することも可能である。さらに、これらのソフトウェアプログラムを、ネットワーク経由でダウンロードさせて提供または配布するように構成してもよい。続いて、データベース情報取得システム1000で行われる各種処理について説明する。図4は、データベース情報取得システム1000で行われるデータベース監視処理の処理手順を示すフローチャートである。図4に示すように、まず、制御部200は、データベース100を監視するための監視設定情報を読み込むステップS401。この監視設定情報は、例えば、クライアントコンピュータ200に記憶された不図示のメモリに記憶されている。図5は、上述した監視設定情報として格納される情報の構成例を示す図である。図5に示すように、監視設定情報には、監視対象となるRDBMSのタイプを示すRDBMSタイプと、そのRDBMSのネットワークパスを示すサーバパスと、そのRDBMSにログインするユーザの名称を示すRDBMS接続ユーザ名と、そのRDBMSにログインするユーザのパスワードを示すRDBMS接続ユーザパスワードと、そのRDBMSへの監視を終了する時刻を示す監視終了時刻と、そのRDBMSに対して監視を行う時間の間隔を示す監視間隔と、が対応付けて記憶されている。そして、制御部200は、これらの情報を読み込み、監視対象となるデータベース110への接続情報を取得しステップS402、データベースへの接続をオープンするステップS403。スキーマ情報取得部221は、監視対象となるデータベースに接続されると、まず初めに、図6に示すスキーマ情報取得処理を行うステップS404。図6は、上述したスキーマ情報取得処理の処理手順を示すフローチャートである。図6に示すように、スキーマ情報取得部221は、データベース100のスキーマ情報にアクセスしステップS601、そのスキーマに定義されているテーブルをカウントするためのカウンタ不図示に1初期値をセットするステップS602。そして、スキーマ情報取得部221は、上述したカウンタの値が、そのスキーマに含まれるテーブルの数以下であるか否かを判定しステップS603、そのスキーマに含まれるテーブルの数以下ではないすなわち、全てのテーブルについて処理が終了したと判定した場合ステップS603;No、図6に示したスキーマ情報取得処理を終了させる。一方、スキーマ情報取得部221は、そのスキーマに含まれるテーブルの数以下であると判定した場合ステップS603;Yes、そのテーブルのテーブル名、テーブルデータ件数を含むテーブル情報を取得しステップS604、さらに、そのテーブルに定義されているインデックス情報を取得しステップS605、取得したこれらの情報をDBスキーマ情報メモリ210に格納するステップS606。その後、スキーマ情報取得部221は、上述したカウンタをカウントアップしステップS607、ステップS603に戻って、以降の処理を繰り返し行う。続いて、図4に戻って、ステップS404以降の処理について説明する。スキーマ情報取得部221がスキーマ情報を取得するとステップS404、制御部220は、監視設定情報を参照して監視終了時刻を取得しステップS405、不図示のタイマが計時する現在時刻と、取得した監視終了時刻とを比較し、現在時刻が監視終了時刻を越えているか否かを判定するステップS406。制御部220は、現在時刻が監視終了時刻を越えていると判定した場合ステップS406;Yes、ステップS411に進み、監視対象となっているデータベースへの接続をクローズしステップS411、図4に示したデータベース監視処理を終了させる。一方、制御部220が現在時刻が監視終了時刻を越えていないと判定した場合ステップS406;No、SQL実行情報取得部222は、SQL実行情報取得処理を行うステップS407。図7は、上述したSQL実行情報取得処理の処理手順を示すフローチャートである。図7に示すように、SQL実行情報取得部222は、データベースサーバ100のメモリ上にキャッシュされているSQL実行情報にアクセスしステップS701、キャッシュされているSQLの数をカウントするための不図示のカウンタに1初期値をセットするステップS702。その後、SQL実行情報取得部222は、上述したカウンタの値が、キャッシュされているSQLの数以下であるか否かを判定しステップS703、キャッシュされているSQLの数以下ではないすなわち、キャッシュされている全てのSQLについて処理が終了したと判定した場合ステップS703;No、図7に示したSQL実行情報取得処理を終了させる。一方、SQL実行情報取得部222は、キャッシュされているSQLの数以下であると判定した場合ステップS703;Yes、キャッシュされているSQL実行情報からそのSQLの最終実行時刻を取得するステップS704。そして、SQL実行情報取得部222は、取得したSQLの最終実行時刻と、前回の監視終了時刻図5に示した監視終了時刻とを比較し、取得したSQLの最終実行時刻が前回の監視終了時刻以降であるか否かを判定するステップS705。そして、SQL実行情報取得部222は、取得したSQLの最終実行時刻が前回の監視終了時刻以降ではないと判定した場合ステップS705;No、新たに取得すべき情報はないと判断して上述したカウンタの値をカウントアップしステップS706、ステップS703に戻って以降の処理を繰り返し行う。一方、SQL実行情報取得部222は、取得したSQLの最終実行時刻が前回の監視終了時刻以降であると判定した場合ステップS705;Yes、新たに取得すべき情報があると判断し、そのSQLについてのSQL実行情報を取得するとともにステップS707、SQL実行情報に記載されているSQL識別子を取得するステップS708。SQL実行情報取得部222は、取得したSQL実行情報をSQL実行情報メモリ212に格納する際に、過去に取得したSQL識別子と同じSQL識別子により識別されるデータが存在するか否かを判定するステップS709。そして、SQL実行情報取得部222は、過去に取得したSQL識別子と同じSQL識別子により識別されるデータが存在すると判定した場合ステップS709;Yes、SQL実行情報メモリ212内に記憶されている情報を、取得したSQL実行情報に上書き更新するステップS710。一方、SQL実行情報取得部222は、過去に取得したSQL識別子と同じSQL識別子により識別されるデータが存在しないと判定した場合ステップS709;No、SQL実行情報メモリ212に、取得したSQL実行情報を追加更新するステップS711。続いて、図4に戻って、ステップS407以降の処理について説明する。SQL実行情報取得処理が終了すると、レポート生成部223は、データベース110の監視結果を示す結果レポートを出力する結果レポート出力処理を行うステップS408。図8は、上述した結果レポート出力処理の処理手順を示すフローチャートである。図8に示すように、レポート生成部223は、まず、出力先となるファイルをオープンし、SQL実行情報メモリ212に格納されているSQL実行情報をSQL単位に整形し、オープンしたファイルに出力するステップS801。レポート生成部223は、SQL実行情報メモリ212に記憶されているSQL単位のSQL実行情報をカウントするための不図示のカウンタに1初期値をセットするステップS802。その後、レポート生成部223は、上述したカウンタの値が、SQL実行情報メモリ212に記憶されているSQL単位のSQL実行情報の数以下であるか否かを判定しステップS803、SQL実行情報メモリ212に記憶されているSQL単位のSQL実行情報の数以下でないと判定した場合ステップS803;No、SQL実行情報メモリ212に記憶されている全てのSQLについての処理が終了したと判断し、ステップS810に進み、ステップS801でオープンしたファイルをクローズしステップS810、図8に示す結果レポート出力処理を終了させる。一方、レポート生成部223は、SQL実行情報メモリ212に記憶されているSQL単位のSQL実行情報の数以下であると判定した場合ステップS803;Yes、そのSQL実行情報に含まれるSQLのアクセスパスを取得し、テーブルデータを取得する際に、アクセスパスにそのテーブルをフルスキャンする処理が記載されているか否かチェックしステップS804、テーブルのフルスキャンを行っているか否かを判定するステップS805。レポート生成部223は、テーブルのフルスキャンを行っている処理がアクセスパスに含まれていると判定した場合ステップS805;Yes、そのテーブルのテーブル名をキーとしてDBスキーマ情報メモリ211を参照し、フルスキャンが行われているテーブルの情報を取得し、フルスキャンテーブル情報を生成するステップS806。一方、レポート生成部223は、テーブルのフルスキャンを行っている処理がアクセスパスに含まれていないと判定した場合ステップS805;No、何もせずにステップS807に進む。そして、レポート生成部223は、SQL実行情報メモリ212とDBスキーマ情報メモリ211に記憶されているデータから、そのテーブルに対するSQL実行時のインデックス使用情報を生成しステップS807、出力先となるファイルに、SQL実行情報、フルスキャンテーブル情報、インデックス使用情報を出力するステップS808。図9は、レポート生成部223が出力するファイルすなわち、結果レポートのレイアウト構造の例を示す図である。図9に示すように、レポート生成部223が出力するファイルは、図3に示したSQL実行情報メモリ211が格納する情報に加え、ステップS805において判定されたSQL実行時のテーブルデータのフルスキャンのあり/なしを示すフルスキャン有無No3と、SQL実行時におけるインデックスの使用状況を示すインデックス使用情報No23~26と、SQL実行時にフルスキャンされているテーブルの情報を示すフルスキャンテーブル情報No27~30とが追加されたものとなっている。図9に示すように、インデックス使用情報には、さらに、そのインデックスが使用されているテーブルの名称と、そのインデックスの名称と、そのテーブルに付与されているインデックスの使用有無とが対応付けて記憶されている。また、フルスキャンテーブル情報には、さらに、フルスキャンされたテーブルの名称と、そのテーブルに格納されているデータの件数を示す総データ件数と、フルスキャン実行後に絞り込まれたデータの件数を示す絞り込みデータ件数とが対応付けて記憶されている。そして、レポート生成部223は、出力先となるファイルに上述したデータを出力した後、不図示のカウンタをカウントアップしステップS809、ステップ803に戻って、SQL実行情報メモリ212に格納されている全てのSQLについての情報を出力するまでステップS804~S809までの処理を繰り返す。続いて、図4に戻って、ステップS408以降の処理について説明する。ステップS408においてレポート生成部223が結果レポートを出力すると、制御部220は、監視設定情報から監視間隔を取得しステップS409、監視間隔で指定された時間の間待機しステップS410、その後ステップS406に戻って、現在時刻が監視終了時刻を越えるまで、ステップS407~S410までの処理を繰り返す。そして、利用者は、本処理終了後に出力された結果レポートを参照し、データベースのSQL性能問題の原因分析を行うこととなる。このように、本実施の形態では、従来のトレース機能のように、データベースサーバ内にあるDBを常に監視し続けるという方法ではなく、定期的にデータベースサーバ内にあるDBへの監視を実行し、SQL実行情報を取得する。DBの機能として、一度DB内で実行されたSQL実行情報はメモリ上にキャッシュされるという仕組みを有しているため、このメモリ上にキャッシュされたSQL実行情報をクライアントコンピュータが定期的に取得するという仕組みになっている。さらに、取得した情報のレポーティングもクライアントコンピュータ側で行うため、データベースサーバへの負荷をなくすことができる。例えば、データベースサーバに負荷を与えることなく、SQL実行情報を取得できるため、稼働中のデータベースでSQL性能問題が発生し、その原因等を調査する必要が生じた場合であっても容易にその原因調査を行うことができる。