Raspberry Pi OS(旧Raspbian)にphpMyAdminをインストール

Raspberry Piを使ってデータベースサーバー環境を学習するためにCentOS8では先行きが見通せないためOSをDebian系のRaspberry Pi OSに変更したところです。

先に記事にしていた通りLAMP(PHP、Apache、MariaDB)までインストールが進んだところでphpMyAdminをインストールします。

リポジトリからインストール

Raspberry Pi OS(旧名称:Rasbian)では、リポジトリからphpMyAdminをインストールすることができます。

$sudo apt install phpmyadmin

コンソールからコマンドを打つとインストールが始まります。

WebサーバーをApache2に指定

最初にphpMyAdminを動作させるWebサーバーの選択画面が表示されるのでapache2を指定しました。

dbconfig-commonでの設定許可

続いてphpMyAdmin用のデータベースをdbconfig-commonで設定しますか?との確認が表示されますが、面倒な設定を済ませてくれるものと理解して「はい」でEnterしました。

ランダムなパスワードを生成

phpMyAdmin用のMySQLパスワードにランダムなパスワードを生成することについて確認のメッセージが表示されるので「了解」で進みます。

以上の操作だけで自動インストールは完了です。

Apaccheの設定

インストールが終了したら、ブラウザからのアクセスでphpMyAdminを起動できるようWebサーバーの設定を行います。

エディタを使用して/etc/apache2/apache2.confを開いて編集します。

Include /etc/phpmyadmin/apache.conf

ファイル内の記述の一番下にこの通り記述を書き足します。

$sudo sysytemctl restart apache2

ファイルを編集後にWebサーバーを再起動させブラウザのアドレスバーにRaspberry PiのIPアドレス/phpmyadominと入力すればログイン画面が表示されるはずです。

phpmyadominのログイン

phpMyAdminのログイン画面

リポジトリから簡単にインストールができたphpMyAdminですが、ユーザーが作成されていないのでログインができません。

インターネットに接続がない環境で次の通りパスワード無しログインを試しました(お薦めではありません)。

/etc/phpmyadmin/config.inc.phpをエディタで開きます。

$cfg['Servers'][$i]['AllowNoPassword'] = true;

上の記述が//でコメントアウトされている部分が2か所あるので//を外します。

続いて再びコンソール画面に戻ります。

$ sudo mariadb -u root

データベースサーバーで次の通り実行しrootのパスワードをいったん消去。

MariaDB [(none)]>set password for root@localhost=password('');

exitでコンソールに戻ります。

$ sudo systemctl restart mariadb

データベースサーバーを再起動させてから再度127.0.0.1/phpmyadmin/index.phpへアクセスすればログインが可能。

ログイン後のphpMyAdmin

ログイン出来たらrootパスワードの再設定とユーザーの作成を忘れずに行い、/etc/phpmyadmin/config.inc.phpで再びパスワード無しログインを無効(外した2か所の//を元に戻す)に戻しておきます。

インストールで何か不足していれば下にエラーが表示されていますが、リポジトリからインストールできたせいか全くエラーがありませんでした。

また、今回はmysql_secure_installationを実行していません。

これでRaspberry Pi3modelBを使ってphpMyAdminでデータベースの作成や編集が行える環境が整いました。