ここでは、Symfowareデータベースのフラグメンテーションの監視について説明します。
Oracleデータベースのフラグメンテーションの監視については、“Oracle Databaseのマニュアル”を参照してください。 |
保管データベースのフラグメンテーションの監視では、以下のスクリプトを使用します。
List Worksのインストール先フォルダ\db\symfo\LWDB\dsi_checkLWDB.bat
監視手順を、以下に示します。
なお、フラグメンテーションの監視は、List Worksサービス、配信管理サービス、および配信出力サービスの起動中に実行できます。
注1:保管データベースがList Worksサーバとは異なるサーバにある場合のみ実施します。
手順1:スクリプトの複写(保管データベースがList Worksサーバとは異なるサーバにある場合)
保管データベースがList Worksサーバとは異なるサーバ(データベースサーバ)にある場合は、スクリプト(dsi_checkLWDB.bat)をデータベースサーバへ複写します。
手順2:スクリプトの修正
保管データベースのRDBシステム名をLWDB以外に変更している場合は、スクリプト(dsi_checkLWDB.bat)の以下の箇所(太字下線)を、環境に合わせて修正します。
@rem /*------------------------------------------------------------------*/
@rem /* 保管データベースのRDBシステム名を指定します。 */
@rem /* RDBシステム名をLWDB以外にしている場合は、環境に合わせて変更して */
@rem /* ください。 */
@rem /*------------------------------------------------------------------*/
@SET RDBNAME=LWDB
手順3:スクリプトの実行
“手順2:スクリプトの修正”で修正したスクリプトを実行します。
スクリプトの実行中にエラーが発生した場合は、ログファイル(checklog_LWDB.txt)を参照し、エラーメッセージを確認します。ログファイルは、スクリプトを実行したカレントフォルダに出力されます。
エラーメッセージの詳細については、“Symfowareのマニュアル”を参照してください。 |
手順4:フラグメンテーションの確認
スクリプトの実行結果を確認します。
実行結果は、テキスト形式の1行としてログファイル(checklog_LWDB.txt)に出力されます。
出力形式は、以下の2つがあります。
DSI(データベース名.DSI名),TYPE(SEQUENTIAL),DATA(aa,bb,cc,dd,ee) DSI(データベース名.DSI名),TYPE(BTREE),BASE(aa,bb,cc,dd,ee),INDEX(--,ww,xx,yy,zz)
実行結果が、以下の両方の条件を満たしている場合、フラグメンテーションを解消したほうがよいと判断します。TYPE(BTREE)のDSIは、BASEの値で判断します。
「ccが10%以上」
「bb≦cc/2(bbがccの半分以下)
実行結果の例を以下に示します。
DSI(LWDB.ENVIDX),TYPE(BTREE),BASE(178,14%,30%,37,41%),INDEX(--,34%,67%,3,1%)
この例では、BASEのccが30%で10%よりも多く、ccの半分が15%、bbが14%で、bbがccの半分以下になるため、フラグメンテーションを解消したほうがよいと判断します。