Homebrew でMySQLとphpMyAdminを使う

MACのローカル開発環境にhomebrew使って、MySQLをいれて、phpMyAdminからsqlの構文確認したり抽出条件とか検討したいなと思ったので、MySQL, PHP, Apach, phpMyAdminを入れてみた備忘録

それぞれのバージョンには特に制約がないので、homebrewで入る標準のものを入れて構成してみようと思います。入れていく順番も適当なので、あんまり参考にはならないかもしれません。

MySQLインストール

brew install mysql

インストールされたバージョンは、8.0.29 Homebrew でした。

mysqladmin -u root password '任意のパスワード'

ワーニングが出てくるけど、ローカル開発環境だからまぁよいかな、あとでphpMyadminでパスワードが必要なので、設定しておきます。インストールしただけだと、mysql -u root で入れます。

mysqladmin: [Warning] Using a password on the command line interface can be insecure.
Warning: Since password will be sent to server in plain text, use ssl connection to ensure password safety.

一応パスワード付きでログインできるのを確認。

mysql -u root -p
Enter password:
Welcome to the MySQL monitor.  Commands end with ; or \g.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql>

php インストール

brew reinstall php

インストールされたバージョンは、8.1.6 でした。

phpMyAdminのインストール

 brew install phpmyadmin

インストールされたバージョンは、5.2.0 でした

To enable phpMyAdmin in Apache, add the following to httpd.conf and
restart Apache:
    Alias /phpmyadmin /usr/local/share/phpmyadmin
    <Directory /usr/local/share/phpmyadmin/>
        Options Indexes FollowSymLinks MultiViews
        AllowOverride All
        <IfModule mod_authz_core.c>
            Require all granted
        </IfModule>
        <IfModule !mod_authz_core.c>
            Order allow,deny
            Allow from all
        </IfModule>
    </Directory>
Then open http://localhost/phpmyadmin
The configuration file is /usr/local/etc/phpmyadmin.config.inc.php

上記のようなメッセージが表示されました。httpd.conf に追加する設定なので、控えをとっておきます。

Apacheインストール

brew install httpd

インストールされたバージョンは、2.4.53._2 でした。

DocumentRoot is /usr/local/var/www.

The default ports have been set in /usr/local/etc/httpd/httpd.conf to 8080 and in
/usr/local/etc/httpd/extra/httpd-ssl.conf to 8443 so that httpd can run without sudo.

To restart httpd after an upgrade:
  brew services restart httpd

Apache が入ったら、一旦動かしてみて、http://localhost:8080 を開いて「It works!」 が表示されるのを確認しておきます。

phpを動作させる設定

phpのモジュールがあることを確認しておきます。場所は、/usr/local/opt/ の下、今回はphp@8.1を入れたので、/usr/local/opt/php@8.1/lib/httpd/modules/libphp.so があるのを確認しておきます。

/usr/local/etc/httpd/httpd.conf開いて、LoadModuleの記述のある辺りに以下を追加

LoadModule php_module /usr/local/opt/php@8.1/lib/httpd/modules/libphp.so
<IfModule php_module>
        AddType application/x-httpd-php .php
        AddType application/x-httpd-php-source .phps

        <IfModule dir_module>
                DirectoryIndex index.html index.php
        </IfModule>
</IfModule>

phpinfo();のファイルをphpinfo.phpとかのファイ名で/usr/local/var/www以下に追加

<?php phpinfo(); 

Apacheをリスタート、restart して確認する。以下が表示されればOK。

brew services restart httpd

phpMyAdminの設定

インストール時に出てきた文言を、同様に/usr/local/etc/httpd/httpd.confの末尾に追加してApacheをリスタート

    Alias /phpmyadmin /usr/local/share/phpmyadmin
    <Directory /usr/local/share/phpmyadmin/>
        Options Indexes FollowSymLinks MultiViews
        AllowOverride All
        <IfModule mod_authz_core.c>
            Require all granted
        </IfModule>
        <IfModule !mod_authz_core.c>
            Order allow,deny
            Allow from all
        </IfModule>
    </Directory>

http://localhost:8080/phpmyadmin/ にアクセスしてログイン画面が出てきたらOKです。(事前にMySQLは起動しておきます。)

設定と動作確認をおえて

Homebrewを使って比較的かんたんにインストールできました。phpを動かすために、libphp.soの場所と、http.confに書き込むところが少し難しく時間がかかった感じです。
今更のローカル開発環境で、Apach + PHP + MYSQL + phpMyAdmin の組み合わせでした。

今のPHPのバージョンだと、PHPで簡易的にサーバーを建てる方法があります。homebrew で入れていたら、PATHは問題なく通っていると思いますので、以下の2行だけでも動きました。(最初の1行はMySQL起動のおまじない)

mysql.server restart
cd /usr/local/share/phpmyadmin/
php -S localhost:9000

最後まで設定してから気が付きました。とほほ

コメント

タイトルとURLをコピーしました