前回の記事では、Ubuntu Server 20.04クリーンインストールの状態からNGINX、MariaDB、PHP7.4をインストールしました。
今回の記事では、MariaDBのWebフロントエンドとしてよく使われるphpMyAdminをインストールします。
前回も書きましたが、環境は以下の通り。
- Ubuntu Server 20.04 LTS
- NGINX 1.17.10
- MariaDB 10.3.22
- PHP 7.4.3
phpMyAdminのバージョンは、4.9.5deb2 です。
バージョンが同じなら、この手順を最初から踏めば問題なくできると思いますので、ご参考までにお願いします(但し生じた責任は負えません…)。
phpMyAdminのインストール
まず、パッケージ情報を最新化します。
$ sudo apt update
インストールを実行。
$ sudo apt install phpmyadmin
途中で下のような画面になります。
今回はNGINXを使用してますので、チェックは入れず、OKを押します。
次に、以下のような画面になります。
OKを選びます。
後でログインに使用するphpmyadminユーザーのパスワードを設定します。
パスワードを入れ、OKを選択。
再度入力して、OK。
phpMyAdminがあるディレクトリは、/var/www/htmlとは別の場所にあります。
なので、/var/www/htmlの配下へシンボリックリンクを作成します。
sudo ln -s /usr/share/phpmyadmin /var/www/html/phpmyadmin
パーミッションと所有者を変更します。
(これをしないと403エラーがでる)
$ sudo chmod 775 -R /usr/share/phpmyadmin/
$ sudo chown www-data:[ユーザー名] -R /usr/share/phpmyadmin/
つぎに、NGINXの設定ファイルも修正します。
$ sudo nano /etc/nginx/sites-available/default
以下のように、index.php を追加します。
Control + o (オー)で保存し、Control + x で終了します。
NGINXの再起動も忘れずに。
$ sudo systemctl restart nginx
これで、インストール作業は終わり。
動作確認
以下のURLにブラウザからアクセスしてみます。
http://サーバーのIPアドレス/phpmyadmin/
うまくいけば、下のように表示されます。
試しに、ログインしてみます。
・ユーザ名:phpmyadmin
・パスワード:上で設定したパスワード
成功すると、下のような画面に。
ログインユーザーは、MariaDBで登録されたユーザー名であれば入れますが、今回の場合はrootユーザーはログインできません(前回、リモートからのログインを認めないよう設定してるので)。
ここまでできれば、インストールと動作確認は問題ありません。
phpMyAdminからデータベースを作成できるように設定する
インストール自体は問題なくできましたが、phpMyAdminユーザーに権限がないため、DBの作成ができません。
なので、phpMyAdminユーザーに権限を付与します。
この作業はrootユーザでコマンドラインから実施する必要があります(上にも書きましたが今回はrootのリモートログインを許可していないので)。
以下のコマンドでログイン。
$ sudo mysql -u root -p
phpmyadminに特権を付与するコマンドを入れます。
WITH GRANT OPTIONは継承を可能にするオプションです。
MariaDB [(none)]> GRANT ALL PRIVILEGES ON *.* TO 'phpmyadmin'@'localhost' WITH GRANT OPTION;
問題無ければ、「Query OK, ..」と表示されます。
設定を反映させます。
MariaDB [(none)]> FLUSH PRIVILEGES;
「Query OK, … 」と出たら、問題なし。
quitで抜けましょう。
これで権限の設定は終わりです。
phpMyAdminにログインしたままの場合はいったん抜け、再度phpmyadminユーザーでログインしましょう。
以下のように「データベース」タブの「作成」ボタンが押せるようになっていれば、問題なくできてます。
次はLaravelのインストールをしてみましょう。
今回は以上です。
終わり。
※アイキャッチ画像はphpMyAdminのロゴ画像です