Apache/MariaDB/PHPとphpMyAdminのインストール [WSL/Ubuntu環境]
WSL(Windows Subsystem for Linux)のUbuntuにApache、MariaDB、PHPをインストールしてphpMyAdminを使用できるようにします。
1. Apacheのインストール
// Apacheのインストール sudo apt-get install apache2 // サービスの開始 sudo service apache2 start // サービスの停止 sudo service apache2 stop // サービスのリスタート sudo service apache2 restart
2. MariaDBをインストール
// MariaDB sudo apt-get install mariadb-server mariadb-client mariadb-backup // リスタート sudo service mysql restart // 初期設定 sudo mysql_secure_installation // ルートの現在のパスワードを入力します Enter current password for root (enter for none): Enter // unix_socket認証に切り替えますか? Switch to unix_socket authentication [Y/n] y // rootのパスワードを設定しますか? Set root password? [Y/n] y // 匿名ユーザーを削除しますか? Remove anonymous users? [Y/n] y // リモートでrootログインを許可しないようにしますか? Disallow root login remotely? [Y/n] y // テストデータベースを削除してアクセスしますか? Remove test database and access to it? [Y/n] y // 設定をすぐに反映するか? Reload privilege tables now? [Y/n] y
WSLのUbuntu16.04だと「mysql -u root -p」でログインできません。ログインを試みると、次のようなエラーが発生します。
※WSL2のUbuntu18.04だとエラーはでません。
エラーが出た場合は、MariaDBで次のSQLを実行します。
// sudoを付与するとパスワードなしでログイン可能 sudo mysql -u root use mysql; update user set plugin='' where User='root'; flush privileges; \q
これで「mysql -u root -p」でログインできるようになりますが、根本的な対策ではありませんのでご注意ください。
最新版にアップグレードする
私の環境ではServer version: 10.0.38-MariaDB-0ubuntu0.16.04.1 Ubuntu 16.04がインストールされました。
Rials6だと10.2.2以上が欲しいので、次で最新版にするのですが、以下は特に注意が必要です。上手くいかないとWSLをリセットする場合があります。
// 旧バージョンを停止・削除する sudo service mysql stop sudo apt-get remove mariadb-server mariadb-client mariadb-backup // アップデート sudo apt-get update sudo apt-get upgrade // 実行指示されたコマンド sudo apt autoremove #不要パッケージの削除 // 最新版にアップグレード curl -sS https://downloads.mariadb.com/MariaDB/mariadb_repo_setup | sudo bash sudo apt-get install mariadb-server mariadb-client mariadb-backup // アップデート sudo apt-get update sudo apt-get upgrade // MariaDBの開始 sudo service mysql restart // MariaDBにログイン mysql -u root -p
Ruby on RailsでMariaDBを使用する場合
bundleを実行するとmysql2でエラーが発生します。
An error occurred while installing mysql2 (0.5.3), and Bundler cannot continue. Make sure that `gem install mysql2 -v '0.5.3' --source 'https://rubygems.org/'` succeeds before bundling.
次のコマンドでlibmysqld-devをインストールすればOK
sudo apt-get install libmysqld-dev
3. PHPのインストール
sudo apt-get install php php-mysql sudo apt-get install libapache2-mod-php sudo service apache2 restart
4. phpMyAdminのインストール
sudo apt-get install phpmyadmin
選択画面が表示されますので、apache2にマウスカーソルを合わせてスペースキーを押してからエンターキーを押します。後はYESで、次はphpMyAdminのパスワードを設定します。
5. phpMyAdminへログインする
参考URL
Window10でLAMP (Fall Creators Update版) (Qiita)
WindowsでRails開発
・Windows10でRuby on Railsの開発環境を構築 [WSL/Ubuntu環境]
・Apache/MariaDB/PHP/phpMyAdminの構築[WSL/Ubuntu環境]
・Apache + PassengerでRailsとPHPを共存する [WSL/Ubuntu環境]
・MariaDBでRailsプロジェクトを作成する [WSL/Ubuntu環境]
・Apache/MariaDBをOS起動時に自動起動させる [WSL/Ubuntu環境]
・WSLが起動しない時の対処方法 [WSL/Ubuntu環境]