NetBSD 2.0E(current) にアップデートしたら、Berkeley DBのせいか、MovableTypeとすりあわせが悪くなった感じがするので、覚悟を決めて MySQLに移行しました。
やることは、それほど手間ではなくて、
これだけです。最初のDBのセットアップは、やったことがない人は一苦労かもしれませんが、NetBSDの pkg 使う限りでは、以下の手順で mysql4-server, p5-DBD-mysql を入れればOK。
# cd /usr/pkgsrc/mysql4-server # make install # make clean # cd /usr/pkgsrc/p5-DBD-mysql # make install # make clean # cp /usr/pkg/etc/rc.d/mysqld /etc/rc.d # vi /etc/rc.conf -> mysqld=YES を追加 # reboot -> mysqld をあげられればOK # mysqladmin -u root password 'root-pass' -> root password 設定ここまでで、設定は終了。 続けて、MovableType用のDBを作り、アカウントを作成
# mysqladmin -u root -p create blogdb # mysql -u root -p Enter password: Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 28 to server version: 4.0.18 Type 'help;' or '\h' for help. Type '\c' to clear the buffer. mysql> grant select,insert,update,delete,create on blogdb.* to bloguser@localhost identified by 'パスワード'; Query OK, 0 rows affected (0.01 sec) mysql> Bye
最後に、mt-db2sql.cgi を実行
ObjectDriver DBI::mysql Database blogdb DBUser bloguser
これで終了なのですが、私の場合、テンプレートを外部ファイルとリンクしていて、このファイルを読めないといってエラーが出てしまったので、外部ファイルリンクを予め全部取り除いてから、もう一度 mt-db2sql.cgi を実行したら、うまくいきました。
多少参考になるのは、以下のリンクです。MovableTypeのMySQL対応の顛末
http://salvageship.dropcontrol.com/2003/07/movabletypemysq.html
MovableTypeのMySQL対応の顛末その2
http://salvageship.dropcontrol.com/2003/07/movabletypemysq_1.html
Salvageship での説明では、うまくいっていなかったようですが、2.6以降でやるなら、うまくいくのではないかという感じですね。
ちなみに、私がはまったのは、上記に加えて、upgrade版のMTが入手できなかったことです。(SixApartは、もう新しいの配ってない)なんとか探しました。。
久々のエントリです。
subversionを使ってみることにしたので、少し情報を整理しようとおもいます。このエントリで、少しまとめようと。(メモ状態なので、書式は勘弁。あとで別にきれいにまとめます)
マスタサイト:
http://subversion.tigris.org/
マニュアル:
O'Reilly から出版される予定の解説本が、Freeで PDF/HTML等で配布されている。
http://svnbook.red-bean.com/
(現在、288ページ - revision 9837)
日本語訳している人もいる (http://subversion.bluegate.org/ - revision 9813) subversion-jpメーリングリストあり。
関連記事:
@IT 次世代プロトコルWebDAVの可能性 - 技術仕様徹底解説 -
http://www.atmarkit.co.jp/flinux/special/webdav/webdav01a.html
Net上での記事:
鵜飼さんの UNIX Userでの記事(2003年8月号)
http://ukai.jp/Articles/2003/uu-svn/index.html
subversionに対する批判に対する反論(和訳)
http://subversion.bluegate.org/svn-anti-fud-ja.html
CVSユーザのためのSubversionガイド
http://slashdot.jp/journal.pl?op=display&uid=12&id=200792
(wakatomoさんって、たぶん、上記の@ITの人のようだ。)
Tips:
NetBSDで使うには:
NetBSD の pkgsrc でビルドすると、いろんなものがビルドされる。
これは、WebDAV ライブラリの neon が使われていて、こいつが結構色々使っているからとか、swigつくるからとか、いろいろあります。結構色々作られてしまう。
devel/subversion = devel/subversion-base + py-subversion + ap2-subversion + p5-subversion なので、特に理由なければ、これを入れるのが良し。
CVS からのマイグレーション:
devel/cvs2svn を突っ込む(on NetBSD)
また、まだ 1.0 quality で無ということなので、要注意。
Python(>= 2.0)と、PythonのBerkeley DB extensionが必要(devel/py-bsddb3)
あと、svn-revision.db という dbm ファイルを使うのだけれど、これが相対パス(つまりカレント)につくるっぽく、どっかで、chdir してるため、reopen できなくなっている。そのため、cvs2svn の
SVN_REVISIONS_DB = 'cvs2svn-revisions.db'
という行を、絶対パスにかえる(/var/tmp/ 頭につけるとか)すると、動くようになる。
あと、--existing-svnrepos はどうもちゃんと効かない感じ。
/home/svn/shigeya-rc を削除してから、
cvs2svn -s /home/svn/shigeya-rc /home/shigeya/tmp/private/rc
は、動いた。終わった後に、apache から読み書きできるようにすることを忘れないように。
ただし、trunk/trunk の下にcommitされている。。ここいらは、マニュアルちゃんと読んでからか。。
テスト:
「svn ls HTTP-PATH」が、便利。
dav_svn_moduleをapacheに入れているなら、repositoryのURLをブラウザで突けば、
素直にブラウズできる(ただし、headだけ。設定なにかあるのかもしれないけど。)
Windows:
Tortoise SVN
http://tortoisesvn.tigris.org/
O'Reilly本は、亀の絵だからのようである。
雑感:
個人的に、最大の問題は、スクリプト類がひたすらPythonで書いてある点。
Python知らないと、辛いことがあるような気がする(現に、cvs2svnでちょっと苦労した)。
Pythonは、覚える気が全くないので、どうしたものか(言語マニアはやめて久しいので)。
cvs2svn は --dumponly が動かない。-s でやると動く。。また、鵜飼さんの記事でかかれいてる
-n オプションは、無くなっちゃったようなので、注意。