理系学生日記

おまえはいつまで学生気分なのか

MySQL (Mac) の README に書かれていること

MySQL の Mac 用バイナリをインストールしたのですが、README に書いてあることを忘れそうだったので、ここにメモしておきます。
全文訳しているわけではなく、必要かもしれないと思ったところだけなので。

インストール場所

インストールされるのは、/usr/local/mysql-VERSION で、/usr/local/mysql からシンボリックリンクが張られる。もし /usr/local/mysql が既に存在している場合は、そのファイルは /usr/local/mysql.bak にリネームされる。

MySQL のバイナリは全て /usr/local/mysql/bin 以下に配置される。また、ソケットファイルは /tmp/mysql.sock がデフォルトである。

ユーザ

MySQL は 'mysql' というユーザアカウントを必要とする。

スタートアップ

システムの起動時に MySQL を起動したい場合は、MySQL Startup Item もインストールする必要がある。これは Mac OS X インストールディスクイメージの中に別パッケージとして同梱されている。MySQLStartupItem.pkg アイコンをダブルクリックし、その後の指示に従うこと。この Startup Item は一度だけインストールすれば良い。MySQL をアップグレードするたびにインストールする必要はない。

Startup Item は /Library/StartupItems/MySQLCOM にインストールされる。Startup Item インストールは、/etc/hostconfig に "MYSQLCOM=-YES-" を追記する。もし自動起動を止めたい場合は、単に "MYSQLCOM=-NO-" とすること。

インストール後は、以下のコマンドを実行することで、MySQL を起動できる。ただし、管理者権限が必要。

Startup Item をインストール済の場合
shell> sudo /Library/StartupItems/MySQLCOM/MySQLCOM start
Startup Item を使用しない場合
shell> cd /usr/local/mysql
shell> sudo ./bin/mysqld_safe
shell> bg

これにより、例えば /usr/local/mysql/bin/mysql を実行することで、MySQL Server に接続できるようになる。

エイリアス

mysql や mysqladmin などのようなよく使うプログラムのために、シェルの設定ファイルにエイリアスを加えたくなるかもしれない。bash の場合、そのシンタックスは

alias mysql=/usr/local/mysql/bin/mysql
alias mysqladmin=/usr/local/mysql/bin/mysqladmin

であり、tcsh の場合は、

alias mysql /usr/local/mysql/bin/mysql
alias mysqladmin /usr/local/mysql/bin/mysqladmin

である。

むしろ、/usr/local/mysql/bin を、PATH 環境変数に追加した方が良いでしょう。

アップグレード

もし既存のものをアップグレードしたい場合、新しい mySQL PKG のインストールでは古いものを削除しないことに気をつけてください。残念ながら、Mac OS X のインストーラは、適切に既存のパッケージをアップグレードする機能を持っていません。

既存のデータベースを新たなもので使いたい場合は、古いデータを新しいデータディレクトリにコピーする必要があるでしょう。これを行う際は古いサーバも新しいサーバも動いていないようにしてください。コピーが完了し、新しいサーバが正常に起動できた場合は、ディスクスペース節約のために、古いファイルの削除を考えても良いでしょう。加えて、/Library/Receipts/mysql-VERSION.pkg の Package Receipt ディレクトリも削除しましょう。