デジタリストBlog

« 前の記事 | トップ | 次の記事 »

2008年09月29日

MovableType 3.37のデータベースをSQLiteからMySQLに再移行

このデジタリストBlogを動かしているMovableType 3.37のデータベースにはSQLiteが使われていた。それを、今日あらためてSQLiteからMySQLに戻してみた。パフォーマンスには満足。

これは2005年12月3日の記事にあるようにMySQLがMovableTypeを動かす上ではSQLiteにパフォーマンスの面で劣るのではないかということとメンテナンスの容易さが動機となっていた。しかし、このところブログの再構成では特に遅さは感じない(1000以上のエントリーがある当ブログも全エントリーを約1分間で再構築できる)ものの、コメントの投稿に30秒以上(時に1分以上)かかることがあってMovableTypeのパフォーマンスの悪さに辟易していたのだった。こんなに時間が掛かるのならMovableTypeをこれ以上使い続けることは出来ない。WordPressに引っ越すかレンタルブログ(例えばBlogger)を借りるか、とまで悩んでいたのだ。特にWordPressについては試しにサーバにインストールしてみて試運転までしていた段階だった。

このブログで使っているMovableTypeのデータベースSQLiteは記事の増加とともに容量が増大し、31MBというサイズになっていた。データベースなんだから多少ファイル容量が大きくなろうと関係あるまいと思っていたのだが、どうやらGoogleに訊いてみると容量依存性にやはりパフォーマンスの悪化は起こるものらしい。1MBのデータベースではMovableTypeにはSQLiteのほうが良いパフォーマンスを示すかも知れないが、それはそれ。データベースが大きくなってきたらそれに応じてデータベースの形態も変えてゆかねばならないのかもしれない。

移行方法としては、まずサーバにMySQLを用意しておいて、SQLiteで使っていたデータベースをmt-db-convert.cgiを使ってMySQLに変更。次にmt-config.cgiのデータベース設定の項目を変更。これで、おしまい。ちなみに、文字コードはSQLite時代もMySQLへ移行後もUTF-8である。

MySQLに変えてみた感想としては、意外にパフォーマンスが良い。再構築の速度に関してはほぼ変わらないか若干遅くなったような気もするが、それでもこのブログの再構築で詰まることはほぼないし、コメントの投稿は(WordPressのような軽快さはないものの)SQLite時代に比べればずいぶんと短い時間での投稿が出来るようになった。特にエラーも出ないし、機嫌良く動いているのである。

このブログはxrea.comで動いていていつかはcoreserverへの移行も必要かと思っていたが、とりあえず現時点ではそれを急ぐ理由もなさそうである。

Posted at 2008/09/29(月曜日)22:22

この記事を読んだ人はこんな記事も読んでいます

« 前の記事 | トップ | 次の記事 »

« 前の記事 | トップ | 次の記事 »