Ubuntu18.04 phpMyAdminのアップグレード

Ubuntu18.04におけるデフォルトのphpバージョンは7.2ですが、一方でphpMyAdminのバージョンは4.6となっており、データのインポート時にエラーが発生するなど7.2完全対応とはなっていないようです。
そこで以下サイトを参考にphpMyAdminを最新バージョンにアップグレードします。

1. phpMyAdminのバックアップ

現在のphpMyAdminフォルダをバックアップ(名前変更)します。

sudo mv /usr/share/phpmyadmin/ /usr/share/phpmyadmin.bak

新規にphpMyAdminフォルダを作成します。

sudo mkdir /usr/share/phpmyadmin/

以下ディレクトリへ移動。

cd /usr/share/phpmyadmin/

2. 最新版phpMyAdminのダウンロードと展開

次のサイトにアクセスして phpMyAdmin download page 最新版の .tar.gz をwgwtでダウンロードします。現時点では4.8.5が最新版です。

sudo wget https://files.phpmyadmin.net/phpMyAdmin/4.8.5/phpMyAdmin-4.8.5-all-languages.tar.gz

ダウンロードしたファイルを展開します。

sudo tar xzf phpMyAdmin-4.8.5-all-languages.tar.gz

lsコマンドで展開されたフォルダを確認します。

ls

次のフォルダ確認できるはずです。 phpMyAdmin-4.8.5-all-languages

このフォルダの中身一式を現在のディレクトリ /usr/share/phpmyadmin へコピーします。

sudo mv phpMyAdmin-4.8.5-all-languages/* /usr/share/phpmyadmin

phpMyAdmin画面で2つのエラーが発生します。以下これらエラーの対策です。

phpMyadmin blowfish secret error and tempdir not writable error|1000x634

3. vendor_config.phpの編集

The $cfg[‘TempDir’] (./tmp/) is not accessible. phpMyAdmin is not able to cache templates and will be slow because of this.

上記エラーへの対応

vendor_config.phpを開きます。

sudo nano /usr/share/phpmyadmin/libraries/vendor_config.php

以下の箇所を書き換えます。

define('TEMP_DIR', '/var/lib/phpmyadmin/tmp/');

phpMyadmin画面でエラーが消えたか確認して下さい。

The configuration file now needs a secret passphrase (blowfish_secret).

上記エラーへの対応

以下の箇所でディレクトリを追加します。

define('CONFIG_DIR', '/etc/phpmyadmin/');

4. ダウンロードファイルの削除

ダウンロードと展開したファイルは必要ないので削除します。

sudo rm /usr/share/phpmyadmin/phpMyAdmin-4.8.5-all-languages.tar.gz
sudo rm -rf /usr/share/phpmyadmin/phpMyAdmin-4.8.5-all-languages

動作に問題がなければバックアップフォルダも削除して下さい。

sudo rm -rf /usr/share/phpmyadmin.bak