Edited at

【El Capitan】Mac OSX 10.11 El Capitan にAMP環境の構築【初心者必見】【続編】

More than 1 year has passed since last update.


macOS Sierra 版(3部作になりました)はこちら。

【macOS Sierra】Mac OSX 10.12 macOS Sierra にRuby + Rails4 開発環境の構築 【初心者必見】

【macOS Sierra】Mac OSX 10.12 macOS Sierra にAMP環境の構築【初心者必見】【続編】

【macOS Sierra】Mac OSX 10.12 macOS Sierra にNode.js 開発環境の構築 【初心者必見】

【El Capitan】Mac OSX 10.11 El Capitan にRuby + Rails4 開発環境の構築 【初心者必見】

ではRailsの環境を構築しましたが、本当にRailsだけなので、MySQLを使用できる環境を作成すべく、続けて作業しました。

最終的にはphpMyAdminを導入してMySQLの操作を簡単にするという目的となります。


Apache

Apacheは、El Capitanではインストール済みです。


バージョン確認

$ httpd -v

Server version: Apache/2.4.16 (Unix)
Server built: Aug 22 2015 16:51:57


手動起動

$ sudo /usr/sbin/apachectl start


自動起動設定

$ sudo launchctl load -w /System/Library/LaunchDaemons/org.apache.httpd.plist


PHP

PHPは、Yosemiteではインストール済みです。


バージョン確認

$ php -v

PHP 5.5.29 (cli) (built: Sep 9 2015 00:26:40)
Copyright (c) 1997-2015 The PHP Group
Zend Engine v2.5.0, Copyright (c) 1998-2015 Zend Technologies


php.ini 設置

sudo cp -p /etc/php.ini.default /etc/php.ini


Apache連携設定

$ sudo vi /etc/apache2/httpd.conf

#LoadModule php5_module libexec/apache2/libphp5.so

LoadModule php5_module libexec/apache2/libphp5.so


Apache再起動

$ sudo /usr/sbin/apachectl restart


PHP動作確認

sudo vi /Library/WebServer/Documents/phpinfo.php

<?php phpinfo();

ここ

にブラウザでアクセスしてphpinfoが表示できればOK!


MySQL


MySQLインストール

brew install mysql


MySQL起動

mysql.server start


自動起動設定

cp /usr/local/Cellar/mysql/5.7.9/homebrew.mxcl.mysql.plist ~/Library/LaunchAgents/


MySQL の root のテンポラリーパスワードを取得

MySQL 5.7.6 以降ではインストールの際に初期パスワードをエラーログに吐くようになりました。以下の場所から初期パスワード情報を取得します。

vi /Users/user/Library/Logs/Homebrew/mysql/01.mysqld

2015-11-16T13:24:46.509572Z 1 [Note] A temporary password is generated for root@localhost: fugafugafuga

※[user]はそれぞれのユーザ名となります。

※2017/10/19現在、初期パスワードは作られないようになっています。


MySQL の root パスワード変更

mysql -u root -pfugafugafuga

mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'パスワード';

※パスワードは任意のものです^^


MySQLへのログイン

$ mysql -u root -p

※パスワードを入力


PHPからのMySQLアクセス確認

$ sudo vi /Library/WebServer/Documents/check_mysql.php

<?php
$dsn = 'mysql:dbname=mysql;host=127.0.0.1';
$user = 'root';
$password = 'password';
try {
$dbh = new PDO($dsn, $user, $password);
$dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

$sql = "SELECT count(*) as cnt FROM user";
foreach ($dbh->query($sql) as $row) {
echo $row['cnt'] ."\n";
}
} catch (PDOException $e){
print('Error:'.$e->getMessage());
die();
}

ここ

にブラウザでアクセスしてエラーが出ずに数字(ユーザ数)が表示されれば連携はうまくいっています。


phpMyAdminのセットアップ

ここからダウンロード


設置

$ unzip phpMyAdmin-4.5.1-all-languages.zip

$ sudo cp -rp phpMyAdmin-4.5.1-all-languages /Library/WebServer/Documents/phpMyAdmin


設定ファイルの変更

$ cd /Library/WebServer/Documents/phpMyAdmin/

$ sudo mv config.sample.inc.php config.inc.php
$ sudo vi config.inc.php
$cfg['Servers'][$i]['host'] = ‘localhost’;

$cfg['Servers'][$i]['host'] = ’127.0.0.1′;

ここ

にブラウザでアクセスしてログインできればOK!



筆者参考

札幌圏でリモート開発、在宅勤務を中心としたシステム開発の会社を経営しています。

ローラハウス