概要
- EC2にインストールしたWordpressのphpMyadminにアクセスできるようになり、中身を触っていたら、以下の警告が表示されていましたので、この警告を解決した手順を残します。
『phpMyAdmin環境保管領域が完全に設定されていないため、いくつかの拡張機能が無効になっています。』
- 前回までの記事はこちら
- phpMyAdminとは:MySQLデータベースを管理するためのWebベースのユーザーインターフェイス
環境
- Mac
- 機種ID:MacBookPro18,3
- macOS:Monterey
- チップ:Apple M1 Pro
- メモリ:16GB
- サーバー(AWS EC2インスタンス)
- OS:Ubuntu 18.04.3 LTS
- Web Server:Apache/2.4.29
解決手順
- 手順は、以下の記事を参考にしました。
- まずは、管理者権限(root)ユーザーでphpmyadminにログインします。
- 「理由についてはこちらをご覧下さい。」の『こちら』をクリックします。
- 『「phpmyadmin」データベースを作成し、phpMyAdmin 環境保管領域をセットアップ。』の『作成』をクリックします。
*左ペインをみるとphpmyadmin
データベースが作成されたことがわかります。 - 次に、以下コマンドで
config.inc.php
編集します。-
config.inc.php
は、phpMyAdminを構成するための設定ファイルです。phpMyAdminの外観や動作をカスタマイズしたり、不正アクセスや攻撃からphpMyAdminを保護したりもしています。
-
$ cd /etc/phpmyadmin
$ sudo vi config.inc.php
-
Storage database and tables
のコメントアウトしている各20行の先頭の「//」を削除します。- 削除すると以下のようになります。
/* Storage database and tables */
$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]['userconfig'] = 'pma__userconfig';
$cfg['Servers'][$i]['recent'] = 'pma__recent';
$cfg['Servers'][$i]['favorite'] = 'pma__favorite';
$cfg['Servers'][$i]['users'] = 'pma__users';
$cfg['Servers'][$i]['usergroups'] = 'pma__usergroups';
$cfg['Servers'][$i]['navigationhiding'] = 'pma__navigationhiding';
$cfg['Servers'][$i]['savedsearches'] = 'pma__savedsearches';
$cfg['Servers'][$i]['central_columns'] = 'pma__central_columns';
$cfg['Servers'][$i]['designer_settings'] = 'pma__designer_settings';
$cfg['Servers'][$i]['export_templates'] = 'pma__export_templates';
/* Contrib / Swekey authentication */
// $cfg['Servers'][$i]['auth_swekey_config'] = '/etc/swekey-pma.conf';
- 削除ができたら保存します。
- phpmyAdminに再度ログインすると先ほどの警告エラーが消えたことがわかります。
- ただし、その後にエラー対応があったので、それを記します。
エラー対応:#1142 - SELECT command denied to user...
- データベースのテーブルを選択すると、以下のエラーがポップアップで出ました。
エラー
SQL query: ドキュメント編集 編集
SELECT tracking_active FROM `phpmyadmin`.`pma__tracking` WHERE db_name = 'sample-db' AND table_name = 'wp_commentmeta' ORDER BY version DESC
MySQL のメッセージ: ドキュメント
#1142 - SELECT command denied to user 'sample-user'@'xxx.xx.x.x' for table 'pma__tracking'
- ユーザーが「pma__tracking」テーブルに対してSELECTコマンドを実行する権限がないらしい。
- ということで、管理者ユーザー(rootユーザー)でphpmyadminにログインします。
- DBの
phpmyadmin
のテーブルpma__tracking
を選択して「特権」タブをクリックします。 -
sample-user
をEdit privilegesで編集し、権限を追加します。
- CheckAllで全権限付与してもいいですし、SELECTのみにしても良いですが、ここはそれぞれのルールに従ってください。最低、SELECTは選ばないと、テーブルを押すだけでまたエラーが出てしまいます。今回のユーザーは強い権限を持ってもらうものだったので、自分の場合は全てチェック。
- 「実行」をクリックします。
- phpmyadminに再度ログインすると、先ほどのエラーポップアップが表示されることなくデータベースのテーブルを選択できるようになりました。