タイトル森下克徳の崖っぷちからWebObjects》第18回〜MySQLでコミュニティサイトを作るv2カテゴリーデータベース, 崖っぷちからWebObjects
作成日2001/8/28 11:12:56作成者新居雅行
さて、今回はMySQLの話である。MacOSXServer1.2の時代には、MySQLなところでも、Macなところでもあんまりこの組み合わせの話題は上がらなかったんだけど(少なくとも日本語コミュニティでは)、最近ちょっとは目にするようになったので、うれしいのである。たとえば、他所の記事なんだけど、HotWired Japanにある「ウェブ・デベロッパーのための『Mac OS X』活用法」というシリーズでは、「無料の『Perl』、『PHP』、『MySQL』とかのソフトウェアをセットアップしてうまく利用し、Mac OS Xを最大限に活用する方法」を解説してくれている。

◇ウェブ・デベロッパーのための『Mac OS X』活用法
http://www.hotwired.co.jp/webmonkey/2001/30/index3a.htm

ただこの記事は英語圏の人間が自分の環境で書いたものを、そのまま翻訳しただけのようで、MySQLに関して言えば、日本語の扱いに問題が出るような気がする。そんなわけで、ここではUNIX的にはもう少し素直な方法を書いてみよう。

ところで、Macな人向けのUNIXとしてのOS X解説コラムとでも言うべき読み物が、新しく今月からMDOnlineの独占オリジナルコンテンツとして始まっている。大津真さんの「XはUNIXでサーバで」がそれで、この連載とあわせて読んでいただければ、より分かりやすいであろう。

さあ、まずMySQLだけれど、現行版のMac OS X Server 10.0.4には、最初っからMySQLが組み込まれている。10.0リリースの時にはまだ含まれていなかったのだが、その後いくつかあるアップデータを組み込むと、自動的に入っている。

入っているんだが、今回はこれは使わない。なぜなら、MySQLはけっこう地道に改良が重ねられているので、自動的に入るバージョンはすでに古いものになっていると言う理由がひとつ。ちなみに執筆時点(2001年8月27日)では、3.23.41というバージョンが最新だ。そして、これがもうひとつ重要な点だけど、Apple提供のMySQLは、どうも日本語の扱いに問題があるようなのだ。

ここでちょっとMySQLと日本語の関係について書いておくと、もともとのMySQLは、大昔はアルファベットしか扱えなかったのである。しかし、日本MySQLユーザー会代表のとみたまさひろ氏が日本語対応の労を取られたおかげで、現在ではEUCやShift-JISが利用できる。またこのとみた氏の拡張を基に、現在では多くの2バイト言語に対応しているのである。

◇日本MySQLユーザー会
http://www.mysql.gr.jp/

それならなぜAppleのもので日本語問題が生じるのだろうか。それは、コンパイル時に日本語を利用すると言うオプションをつけないかぎり、デフォルトのLatin1が選択されてしまうからなのだ。つまり、Appleのものは素のままでコンパイルしたに違いない。実はその状態でも日本語文字はだいたい扱う事ができるのだけれど、検索時に1バイト単位で検索がかかるので、正しい結果が得られない事があるのだ。それなら、素直に最初からEUCやShift-JISで稼動させておけば面倒がないのである。

というわけで、MySQLのコンパイルも自前でしてみよう。マルチバイト対応版として。

ところで、インストールした時にどこのディレクトリにインストールされるか、これもコンパイル時のオプションで指定しなくてはならない。指定がないと、デフォルトの/usr/local以下に各種ファイルが配置される。これで実行上不具合があるわけではないが、せっかく苦労して自分で作り上げても、このままではAppleのアップデータを導入すると、きれいに置き換えられてしまうのだ。だから、最初から違うところにインストールしようと思うのである。えっ?複数入れて大丈夫かって?たしかにかつてのMacでは、同じアプリケーションを複数インストールするのは不具合の原因とか言われた時代もあった。しかしこれはまったく問題ない。それどころか、複数インストールして複数同時に稼動する事だって不可能ではない。(今回そこまではしないけ
どね。)

あっ、ここでちょっと警告なんだけど、もしもあなたがUNIXははじめてで勘所もつかめないということであれば、この自前MySQL組み込みは止めておいた方がよい。これらの操作でシステムが損傷を受けたとしても、だれも面倒は見てくれない。自分の責任で背負い込むべきものなのである。すなおに、Appleが次のアップデータで改良をしてくれるのを待つべきだ。また、実運用中のサーバでいきなり試すのも止めよう。私自身、お金をいただいて利用していただいているサーバは、まだMac OS X Server1.2のままである。新しいサーバは、とりあえずPower Book G3/266にインストールして、各種テストをくり返している最中なのである。この記事もテストしながら書いているのだ。

さあ、覚悟のできた人は、次に進もう。
[森下克徳]
関連リンク