サーバ

Mac OSX に MySQL インストール & 自動起動設定メモ

最近仕事でちょくちょく触るので自宅サーバに MySQL を入れてみました。
PostgreSQL から移行します。

ので、メモ。

・MySQL(バイナリ版)のインストール
このテのソフトをバイナリからインストールしたのは初めてかも!?
楽ちんですね。

# cd /usr/local
# gunzip < mysql-5.0.41-osx10.4-i686.tar.gz | tar xvf -
# ln -s mysql-5.0.41-osx10.4-i686 mysql
# cd mysql
# chown -R mysql .
# chgrp -R mysql .
# scripts/mysql_install_db --user=mysql
# chown -R root .
# chown -R mysql data

・自動起動の設定。
/Library/StartupItems/ 以下にあるアイテムはシステム起動時に勝手に呼び出して起動してくれます。

# mkdir /Library/StartupItems/mysql
# cd /Library/StartupItems/mysql
# vi StartupParameters.plist
----------------------------------
{
Description = "mysql";
Provides = ("mysql");
Requires = ("Disks");
Preference = "Late";
Messages =
{
start = "Starting mysql";
stop = "Stopping mysql";
};
}
----------------------------------

# vi mysql
----------------------------------
#!/bin/sh

. /etc/rc.common

StartService ()
{
ConsoleMessage "Starting MySQL server"
su - mysql -c '/usr/local/mysql/bin/safe_mysqld -u mysql &'
}

StopService()
{
ConsoleMessage "Stopping MySQL server"
su - mysql -c '/usr/local/mysql/bin/mysqladmin -u root shutdown'
}

RestartService ()
{
StopService
StartService
}

RunService "$1"
----------------------------------

# pwd
/Library/StartupItems/mysql
# chmod +x mysql
# ls
StartupParameters.plist mysql
# SystemStarter start mysql
Checking disks
Starting mysqld daemon with databases from /usr/local/mysql/data
# SystemStarter stop mysql
STOPPING server from pid file /usr/local/mysql/data/***.pid
070905 17:48:53 mysqld ended

以上。
次回は PostgreSQL べったりの自家用掲示板アプリの移植で気がついたことを記します。