2013年01月06日
このエントリーをはてなブックマークに追加
当初の目的であった、ログの集約です。
最初のころのログは、日々ローテーションされていたので、これが不便です。適当な期間ごとに集約したいと思います。

流れとしては、日々のDBをエクスポート → 1つのDBでインポート です。


・DBを開く
c:\sqlite\sqlite3 C:\acclogging_XXXXXXXX.db

・SQLの結果を insert コマンドが付与された状態にする
.mode insert

・出力結果をテキストファイルにする
.output XXXXXXXX.txt

これを必要な分だけ繰り返します。

※上記で出力すると、TXT ファイルは以下の通りとなります。
INSERT INTO table VALUES('20100117000049',6300,1,NULL,NULL,'0',NULL,10,'upd','[デスクネッツパス]\xwmlrecv.exe','[デスクネッツパス]\xwmlrecv.exe',0,NULL,'[デスクネッツパス]\data\user\10\mail\1\info','1',0,NULL);

ここで、INSERT INTO table となっています。正しくは INSERT INTO TT_ACCESSLOG であるため、table で置換を行います。

※置換後
INSERT INTO TT_ACCESSLOG VALUES('20100117000049',6300,1,NULL,NULL,'0',NULL,10,'upd','[デスクネッツパス]\xwmlrecv.exe','[デスクネッツパス]\xwmlrecv.exe',0,NULL,'[デスクネッツパス]\data\user\10\mail\1\info','1',0,NULL);


・インポート
c:\sqlite\sqlite3 C:\acclogging_XXXXXXXX_XXXXXXXX.db

・ReadコマンドでSQLを実行する
.read XXXXXXXX.txt

これを繰り返します。

最終的にできあがったファイルC:\acclogging_XXXXXXXX_XXXXXXXX.db をデスクネッツのログフォルダに戻します。

ちなみにXXXXXXXX_XXXXXXXXの部分は開始年月日、終了年月日です。
例:2013-01-01 〜 2013-01-10 までの場合
acclogging_20130101_20130110.db


stock_value at 18:11│Comments(0)TrackBack(0)技術:2013年 

トラックバックURL

この記事にコメントする

名前:
URL:
  情報を記憶: 評価: 顔