MovableTypeのSqliteを最適化する

| コメント(0) | トラックバック(0)

日付が変わりましたが本日2回目の更新です。

先ほど記事をアップしたあとまるで更新していなかったブログ(blog)にトライ&ビルド構築日記というサブ・ブログをいったん破棄し、新しくブログを作ろうとしたところ再構築に失敗してしまいました。

MTの管理上は消えてるけどサーバ側のフォルダが消えていないということはありうる話とFTP接続して確認するとやっぱり残っていました。やれやれと思いつつ該当フォルダを削除して再びトライするも結果は変わらずこのフォルダは利用するのをやめて別のフォルダで作成したらあっさり作成できました。

なんだろなと思いつつもやもやしたまま新しくブログを作ったのですが、やっぱり納得できません。ここで普段眠ってる頭が回転しました。

 

本題に入る前に話をさかのぼります。

先の週末ですがチカッパ!のお試しをしていました。近い将来サーバを移転しようとは思ってるためその予行演習のつもりで色々試していたとき、移設方法がわからずとりあえず

  1. MTのインストール
  2. MT-config.cgi内にあるパスの記述変更
  3. MTへログイン
  4. 公開パスの変更
  5. 再構築

とやってみたら新しいサーバでも正常に構築できちゃいました。これはこれでひとつのネタなんで顛末はいずれちゃんと書こうと思ってたのですが、dbさえあれば移設はばっちり?とか思ったのでした。

話を元に戻します。上の経験があったため再構築に失敗するのはdbに欠陥(ごみが残ってる)せい?とか頭によぎりました。直前までデータが書き込まれていたわけですから可能性としては高いわけです。

仕事柄MS-Accessとか利用するんですが、こういったdbでもデータを削除しても実際には削除しましたという印をつけるだけで実際にはファイルから消えていません。当然ファイルは肥大化する一方なんで時々最適化という処理を行い、削除したふりをしたデータを本当の意味で削除します。

sqliteについては利用したことがないため、細かいところはわかりませんが理屈は一緒だろうという推測のもとに検索してみたところ NOBODY::PLACEさんのSQLiteのサイズを小さくする という記事と momo's bぉgさんのSQLite DBファイルの最適化をする。という記事に出会い最適化は出来ることがわかりました。

以下は両者のブログ記事にも書いてあることですが、キャプチャー付きでご紹介します。なお実際に試す場合は自己判断のもとに自己責任で行ってくださいね。この記事を参考にしてトラブルが発生しても当方は責任を持ちません。

 

TKSQLITEでSQLiteを最適化する

最適化にはTKSQLITEというツールを利用します。いくつかのバージョンがあるようですが当方はVer. 0.5.6 Standard Excutable binalyのWin32-bin.zipをダウンロードしました。(以下のサイトからダウンロードできます。)

http://reddog.s35.xrea.com/wiki/TkSQLite.html

XP環境なら右クリック→展開で解凍できます。解凍フォルダの中にTKSQLITEが現れるはすですのでそれを利用します。実際の作業は次のとおり

1、FTPでSQliteのデータベースをパソコン上にダウンロードする

 この作業についてはキャプチャー自主規制。ダウンロードしたらコピーしてリネームしてください。名前はお好きなように♪ここではorgsqlitedbとしました。orgのほうはバックアップ用です。

beforedb.jpg

 

2、TKSQLiteを起動する

TKSQLiteをダブルクリックで起動します。(Windowsの場合)

tksqlite1.jpg

メニューから「File」→「Open」で「ファイルを開く」ダイアログが表示されます。SQLITEのデータベースを落とし込んだフォルダを選んで選択してください。このときファイルの種類をall file(*.*)に変更しないと対象のファイルが表示されませんのでご注意ください。

 

3、データベースファイルを開く

 正常に接続されると左上にDBの中身(テーブル)が表示されます。テーブルの中身については変更する箇所はありません。メニューから「DATABASE」→「VACUUM」を選んでクリックします。

 

tksqlite2.jpg

 

実行確認のダイアログが表示されます。「OK」をクリックします。

tksqlite3.jpg

 

完了時にメッセージが表示されますので「OK」をクリックします。

tksqlite4.jpg

 

ここまで作業がすんだらTKSQLiteは終了してください。以下は実行結果です。org~よりサイズが小さくなっているのがわかりますよね。

 

afterdb.jpg

 

サイズが小さくなったことを確認して再びサーバの元のフォルダに上書きアップロードしてください。これですべての作業が完了です。MTにログインして再構築などして不具合が出なければOKです。なんらかの不具合がある場合(ページが生成されないとか)にはバックアップ用のファイルを元のファイル名にして上書きしてください。元の状態には戻りますので。

当方はブログの再構築を正常に行うために作業しましたが、過去に消した記事、トラックバック、コメントなども消されることで再構築のスピードも上がるようです。長くMTブログを運営されている方にはやってみる価値はあるかもしれません。(しつこいですが自己責任で)

余談ですがMT4.0XからMT4.1にアップグレードした際に発生したシステムテンプレートの二重化も削除できるかもしれません。dbのバックアップだけでもとっておけば検証できたんですけどね。ちょっと残念です。

 

 

 

 

 

 

 

 

 

 

 

 


★記事がお役に立ちましたら応援クリック願います↓
人気ブログランキングへ
にほんブログ村 ブログノウハウ
ブログ王ランキングはこちらをクリック!

BuzzurlにブックマークBuzzurlにブックマーク

関連記事


  1. Movable Typeにページ分割を導入してみました。
  2. MT4.1にアップグレードしたことにより不具合が発生
  3. MT4.1のカラムレイアウトを変更する
  4. MT4.12にアップグレードしました。
  5. ロリポップのサポートにArchive::ZIPが使えるか問い合わせてみました

トラックバック(0)

トラックバックURL: http://tryandbuild.com/mt/mt-tb.cgi/196

コメントする

ランキング参加中!

にほんブログ村 ブログブログ ブログノウハウへ







TREview

運用環境



このブログ記事について

このページは、かずが2008年7月 1日 00:52に書いたブログ記事です。

ひとつ前のブログ記事は「JUGEMも放置すると広告が表示されるようになったようです。」です。

次のブログ記事は「スタイルシートでスクロール表示」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。