目次

  1. MySQLをインストールする
  2. MySQLとPHPを接続する
  3. エンコードをUTF-8に変更する
  4. OSブート時にMySQLが自動起動するように設定する
  5. rootアカウントのパスワードを設定する

 

Mountain LionにMySQLをインストールして、PHPと接続する手順を紹介します。MySQLはmacportsでインストールし、OS X付属のPHPからアクセスできるようにします。

 

 

1. MySQLをインストールする

MySQLをmacportsインストールする

まずはMySQLをインストール&初期化などの作業を行い、MySQLを使えるようにします。

1)ターミナルを開き、下記コマンドでインストールする。

sudo port install mysql5-server

2)ユーザー mysql で初期化する

sudo mysql_install_db5 --user=mysql

3)MySQL Serverを開始する

sudo /opt/local/share/mysql5/mysql/mysql.server start

4)MySQLにログインしてみる
※初期状態でrootアカウントが自動作成されており、最初はパスワードが空で、全操作権限をもちます。

mysql5 -u root

 

 

2. MySQLとPHPを接続する

次に、MySQLとPHPを接続して通信できるようにします。

ソケットファイルのパスを確認する

1)再び、MySQLにログインします

mysql5 -u root

2)mysqld.sockの場所を確認します

statusコマンドで、mysqlの環境設定情報を確認します。

mysql> status;

次のような行を探して、パスを控えておきます。

UNIX socket: /opt/local/var/run/mysql5/mysqld.sock

 

php.iniファイルの、ソケットファイルへのパスを書き換える

php.iniファイルを開き、次のような行を探します。

mysql.default_socket = ・・・

右辺を、先ほど確認したmysqld.sockのパスに書き換える。

mysql.default_socket = /opt/local/var/run/mysql5/mysqld.sock

 

Apacheを再起動する

php.iniファイルを書き換えたので、apacheを再起動して、設定情報を反映させます。

sudo /usr/sbin/apachectl restart

 

動作を確認する

PHPとMySQLが通信できるかどうか、動作を確認します。

1)MySQLとの接続確認用のPHPファイルを作成します。

sample.php
<?php 
 if (!$link = mysql_connect('localhost', 'root', '')) {
	die('MySQL access failed.');
 }
 echo 'MySQL access successful.';
 mysql_close($link);

ここでは、前々回記事で作成したサイトに置いてみます。

~/WebSites/localweb1/sample.php

 

2)サイトにアクセス

http://localweb1.net

“MySQL access successful”が表示されたらOKです。

 

 

3. エンコードをUTF-8に変更する

WebサイトをUTF-8で作成することが多いので、データベースのデフォルト文字コードをUTF-8に揃えておきます。

cnfファイルを作成する

1)ベースとなるファイルをコピーする

MySQLの設定ファイルを作成します。MySQLのインストールと同時に、いくつかのタイプの設定ファイルが用意されています。1つ選び、コピーして使います。ここでは、規模が小さいデータベースであるとし、smallを選択します。

sudo cp /opt/local/share/mysql5/mysql/my-small.cnf /opt/local/etc/mysql5/my.cnf

2)my.cnfを編集する

コピーしたファイルへ移動し、自分のアカウントに編集権限を付与してファイルを開きます。

/opt/local/etc/mysql5/my.cnf

括弧[]で、セクション毎に分かれて記述されています。そのうち、[client]と[mysqld]を探して、それぞれ下記行を追記します。

[client]
default-character-set=utf8

[mysqld]
character-set-server = utf8
default-character-set = utf8
skip-character-set-client-handshake

 

MySQLを再起動する

設定した内容を反映させるために、MySQLを再起動します。

sudo /opt/local/share/mysql5/mysql/mysql.server restart

 

結果を確認する

MySQLにログインして、statusコマンドで環境設定情報を確認します。

mysql> status;

正しく反映されれば、下記の項目がutf8と表示されていると思います。

Server characterset: utf8
Db     characterset: utf8
Client characterset: utf8
Conn.  characterset: utf8

 

 

4. OSブート時にMySQLが自動起動するように設定する

OS起動する度にコマンドラインからMySQLを立ち上げるのは面倒なので、macportsの機能を使って自動起動するようにしておきます。

sudo port load mysql5-server

 

 

5. rootアカウントのパスワードを設定する

初期状態ではrootアカウントのパスワードが未設定なので、設定しておきます。

set password for root@localhost=password('password');

次回ログインするときからは、最後に-pを追加します。すると、パスワード入力を求められます。

mysql5 -u root -p
Enter password:

 

 

次の記事:第8回 Eclipse+PDTをインストールして、XDebugでデバッグできるようにする

前の記事:第6回 ユーザー共有サイトを新設する

 

「MacにWeb開発環境を構築する」の記事