CentOS7のPHP5.4にphpMyAdminをインストールする(ざっくりメモ

CentOS7.5のパッケージで入れたphp5.4+MariaDBでphpMyAdminをyumでインストールしたかったけど、phpのバージョンとかリポジトリーとかの絡みがあって入れられそうもなかったので、手動でインストールしてみた。
そのメモ。
良い子は真似しないでね。

phpmyadmin_logo.png

1.phpMyAdminのダウンロード。php5.4で使えるphpmyadminのバージョンは4.0。
wget https://files.phpmyadmin.net/phpMyAdmin/4.0.10.20/phpMyAdmin-4.0.10.20-all-languages.zip

2.解凍
unzip phpMyAdmin-4.0.10.20-all-languages.zip

3.解凍したフォルダを、phpmyadminという名前に変更して/var/wwwの下へ移動。
mv phpMyAdmin-4.0.10.20-all-languages phpmyadmin
mv phpmyadmin/ /var/www/.

4./var/wwwの下のconfig.sample.inc.phpをconfig.inc.phpとしてコピー。
cp config.sample.inc.php config.inc.php

5.config.inc.phpを編集。
diff config.inc.php config.sample.inc.php
17c17
< $cfg['blowfish_secret'] = 'xxxxxxxxxxx'; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */
---
> $cfg['blowfish_secret'] = 'a8b7c6d'; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */
48,60c48,60
< $cfg['Servers'][$i]['pmadb'] = 'phpmyadmin';
< $cfg['Servers'][$i]['bookmarktable'] = 'pma__bookmark';
< $cfg['Servers'][$i]['relation'] = 'pma__relation';
< $cfg['Servers'][$i]['table_info'] = 'pma__table_info';
< $cfg['Servers'][$i]['table_coords'] = 'pma__table_coords';
< $cfg['Servers'][$i]['pdf_pages'] = 'pma__pdf_pages';
< $cfg['Servers'][$i]['column_info'] = 'pma__column_info';
< $cfg['Servers'][$i]['history'] = 'pma__history';
< $cfg['Servers'][$i]['table_uiprefs'] = 'pma__table_uiprefs';
< $cfg['Servers'][$i]['tracking'] = 'pma__tracking';
< $cfg['Servers'][$i]['designer_coords'] = 'pma__designer_coords';
< $cfg['Servers'][$i]['userconfig'] = 'pma__userconfig';
< $cfg['Servers'][$i]['recent'] = 'pma__recent';
---
> // $cfg['Servers'][$i]['pmadb'] = 'phpmyadmin';
> // $cfg['Servers'][$i]['bookmarktable'] = 'pma__bookmark';
> // $cfg['Servers'][$i]['relation'] = 'pma__relation';
> // $cfg['Servers'][$i]['table_info'] = 'pma__table_info';
> // $cfg['Servers'][$i]['table_coords'] = 'pma__table_coords';
> // $cfg['Servers'][$i]['pdf_pages'] = 'pma__pdf_pages';
> // $cfg['Servers'][$i]['column_info'] = 'pma__column_info';
> // $cfg['Servers'][$i]['history'] = 'pma__history';
> // $cfg['Servers'][$i]['table_uiprefs'] = 'pma__table_uiprefs';
> // $cfg['Servers'][$i]['tracking'] = 'pma__tracking';
> // $cfg['Servers'][$i]['designer_coords'] = 'pma__designer_coords';
> // $cfg['Servers'][$i]['userconfig'] = 'pma__userconfig';
> // $cfg['Servers'][$i]['recent'] = 'pma__recent';

6.apacheにエイリアスの設定。
/etc/httpd/conf.dの下に、以下の内容でphpmyadmin.confを作成。

Alias /phpmyadmin /var/www/phpmyadmin
<Directory /var/www/phpmyadmin/>
AddDefaultCharset UTF-8
<IfModule mod_authz_core.c>
<RequireAny>
Require ip 127.0.0.1
Require ip xxx.xxx.xxx.xxx
</RequireAny>
</IfModule>
</Directory>

7.コンフィグをテスト。
apachectl configtest

8.apacheを再起動。
systemctl restart httpd

9.許可したIPから/phpmyadminへブラウザでアクセス。
mysqliがない!というエラーが表示されたので、yum install php-mysqliを実行。

10.phpmyadminを使って、create_tables.sql をインポート。(phpmyadminのソースのexamplesフォルダの下にある)
この操作を行わないと、phpmyadminでデーブルを展開時に、
#1146 - Table 'phpmyadmin.pma__table_uiprefs' doesn't exist
というエラーが発生する。

完了!

ぐっどらっこ。