osx_db

Mac OS Xでデータベースサーバを組む【後編】

Mac OS X ServerでMySQLを使う

 田畑 英和
2008/05/26

 

index
・サーバとしてのMac
・Mac OS X ServerでのMySQLの利用
・Mac OS X ServerでのMySQLの管理
・MySQLのインストール
・MySQLの管理ツール
-MySQL GUI Tools
-MySQL Administrator

Mac OS X ServerでのMySQLの管理

 Mac OS X Serverに付属する管理ツール[サーバ管理]にはMySQLの管理機能も組み込まれています。ただし、設定可能な項目は次のごく基本的なものに限られています。

・ネットワーク接続の許可 (デフォルトでは無効)
・データベースのパス(デフォルトは/var/mysql
・MySQLのルートパスワードの設定

fig1
図1 [サーバ管理]でのMySQLの管理

 MySQLの起動も[サーバ管理]から実行でき、最初の起動でデータベースの初期化が行われます。[サーバ管理]からMySQLを起動させておくと、システムを再起動してもMySQLが自動的に起動するようになります。MySQLの自動起動はlaunchdというデーモンマネージャによって実現されており、プロセスの起動後はlaunchdによって監視されています。

 サーバ管理でのMySQLの設定および起動は、実際にはlaunchdを操作していることになり、設定内容はXML形式のlaunchd設定ファイルに反映されます。

・MySQL用のlaunchd設定ファイルのパス
/System/Library/LaunchDaemons/org.mysql.mysqld.plist

 MySQLの設定ファイルも/etc/my.cnfにあらかじめ用意されてはいますが、launchdの設定ファイルを確認すると/usr/libexec/mysqldをいくつかのオプション付きで実行していることが分かります。

 デフォルトの状態では次のオプションが設定されています。

・mysqldの起動オプション(デフォルト)
--socket=/var/mysql/mysql.sock
--user=mysql
--port=3306
--datadir=/var/mysql
--pid-file=/var/mysql/<hostname>.pid
--skip-networking

 mysqldの実行ユーザーがmysqlとなっていますが、mysqlユーザー注2はあらかじめシステムに標準で登録済みですので別途登録する必要はありません。

 このような仕組みでMac OS X Server上でMySQLが管理されているわけですが、[サーバ管理]では設定できない起動オプションを追加する場合、システム標準のlaunchd設定ファイルを直接書き換えないようにしましょう。[サーバ管理]で設定を変更した場合、ユーザーが直接書き換えた内容が上書きされて消えてしまう危険性があるからです。

 追加の設定は別途MySQLの設定ファイルで行うこともできます。また、どうしてもlaunchd設定ファイルをカスタマイズしたい場合には、MySQLの管理を[サーバ管理]で行うのをやめて、MySQL用のlaunchd設定ファイルを「/Library/LaunchDaemons/」にコピーしてから、そちらをカスタマイズするようにしましょう。こちらのディレクトリであれば[サーバ管理]と競合することはありません。

 管理ツールではこのほかに、MySQLの起動確認やログファイルの表示/検索ができます。

注2:システム標準のmysqlユーザーはユーザー名として「mysql」と「_mysql」の2つが設定されています。このため、psコマンドなどでプロセスを確認すると実行ユーザーは「_mysql」と表示されます。


MySQLのインストール

 Mac OS X Serverに付属のものとは異なるバージョンのMySQLを使用したい場合や、Mac OS X上でMySQLを使用したい場合には別途インストールから行うことになります。

 インストール手順についてはここでは割愛しますが、あらかじめMac OS X用にビルドされたMySQLが、MySQL ABのWebサイトで公開されていますので、これらをダウンロードすればインストールは簡単です。

 Mac OS X用のビルドはMac標準のインストーラを用いたパッケージ形式とtar ball形式の2種類で提供されており、さらにOSのバージョンやCPUのアーキテクチャごとに個別に配布されています。Universal Binaryではないため、使用するアーキテクチャに合わせて適切なビルドをインストールする必要があります。

 パッケージ形式のMySQLをインストールした場合、インストール先は/usr/local/になり、Mac OS X Serverに付属するMySQLを上書きすることなくインストールできます。また、自動的に/usr/local/mysqlにシンボリックリンクが作成されます。Mac OS X Serverにインストールした場合は、あらかじめインストールされているMySQLと混同しないようコマンドのパスに注意しましょう。

  さらに、パッケージ版のMySQLにはシステム環境設定項目とStartupItem(自動起動の設定ファイル)のインストーラも含まれています。

 システム環境設定ではMySQLの起動と停止およびシステム起動時の自動起動が設定できます。MySQLをシステム起動時に自動起動するには、あらかじめStartupItemをインストールしておく必要があります。

fig2
図2 システム環境設定でのMySQLの管理

 StartupItemをインストールすると/Library/StartupItems/MySQLCOM/に設定ファイルがインストールされます。

 StartupItemは、launchdが導入される以前から使用されていたシステム標準の仕組みで、現在でもサポートされています。もちろんlaunchdを利用して自動起動するように設定してもかまいませんが、どちらか片方のみを利用するようにして競合しないように注意してください。

  MySQLはMySQL AB以外にもFinkプロジェクトMacPortsプロジェクトなどの配布するパッケージからも入手できます。

 

次のページへ 2/3 次のページへ
 Index
Mac OS Xでデータベースサーバを組む【後編】
Mac OS X ServerでMySQLを使う
  Page 1
・サーバとしてのMac
・Mac OS X ServerでのMySQLの利用
→ Page 2
・Mac OS X ServerでのMySQLの管理
・MySQLのインストール
  Page 3
・MySQLの管理ツール
 -MySQL GUI Tools
 -MySQL Administrator

>>>@ITテクノロジー 今月の特集記事一覧へ



Database Expert フォーラム 新着記事
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

注目のテーマ

Database Expert 記事ランキング

本日月間