11. MariaDBのインストール の続き。
(この記事はまだ中途半端なので参考にしないでください)
phpMyAdmin にログインすると下部に「phpMyAdmin 環境保管領域が完全に設定されていないため、いくつかの拡張機能が無効になっています」と表示されているかと思います。
これを解決するにあたって、コマンド入力での設定とGUIでの設定の二種類を試してみますので、あとでリセットできるように現時点でのスナップショットを撮っておくことをお勧めします。
「理由についてはこちらをご覧ください」と書かれているのでクリックすると
「Configuration of pmadb... NG」
「一般的なリレーション機能 無効」
とのこと。
その部分の「?」をクリックすると phpMyAdmin の説明書ページの
「phpMyAdmin configuration storage *1」の欄に飛ぶ。
(phpMyAdmin の)追加機能(ブックマーク、コメント、SQL履歴、追跡メカニズム、PDF生成、変換機能、リレーションなど)をすべて使うためには、特別なテーブルのセット(環境保護領域)を作成する必要があります。これらのテーブルは、自身のデータベースに格納することもマルチユーザーインストール用の中央データベースに格納することもできます(このデータベースには制御ユーザーがアクセスするため、他のユーザーにはアクセス権がありません)。
http://localhost/phpmyadmin/doc/html/setup.html#phpmyadmin-configuration-storage
というわけで「環境保管領域」を作ります。また「環境保管領域」にアクセスするための特別なアカウント "controluser" を作ることが推奨されています。
この特別なアカウントは、phpMyAdmin環境保存領域にアクセスするために使用されます。シングルユーザーの場合は必要ありませんが、phpMyAdminが共有されている場合は、phpMyAdmin環境保管領域へのアクセス権をこのユーザーに与え、phpMyAdminを使用するように構成することをお勧めします。すべてのユーザは、phpMyAdmin環境保存領域に直接アクセスする必要なく、その機能を使用することができます。 https://docs.phpmyadmin.net/ja/latest/config.html#cfg_Servers_controluser
一旦phpMyAdmin からログアウト。
[root@localhost ~]# vi /usr/share/phpMyAdmin/sql/create_tables.sql -- Privileges -- -- (activate this statement if necessary) GRANT SELECT, INSERT, DELETE, UPDATE, ALTER ON `phpmyadmin`.* TO 'pma'@localhost; ↑ 2行分コメントを外す
# cp -p /etc/phpMyAdmin/config.inc.php /etc/phpMyAdmin/config.inc.back # vim /etc/phpMyAdmin/config.inc.php
コメントアウトを解除
/* * phpMyAdmin configuration storage settings. */ /* User used to manipulate with storage */ $cfg['Servers'][$i]['controlhost'] = ''; $cfg['Servers'][$i]['controlport'] = ''; $cfg['Servers'][$i]['controluser'] = 'pma'; $cfg['Servers'][$i]['controlpass'] = 'pmapass'; ←変更する /* 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]['designer_coords'] = 'pma__designer_coords'; $cfg['Servers'][$i]['userconfig'] = 'pma__userconfig'; $cfg['Servers'][$i]['recent'] = 'pma__recent'; $cfg['Servers'][$i]['users'] = 'pma__users'; $cfg['Servers'][$i]['usergroups'] = 'pma__usergroups'; $cfg['Servers'][$i]['navigationhiding'] = 'pma__navigationhiding'; /* Contrib / Swekey authentication */ // $cfg['Servers'][$i]['auth_swekey_config'] = '/etc/swekey-pma.conf'; $cfg['PmaAbsoluteUri'] = 'http://'.$_SERVER['SERVER_NAME'].'/phpMyAdmin/';
[root@localhost ~]# mysql -u root -p Enter password: Welcome to the MariaDB monitor. Commands end with ; or \g. ~(後略)~
MariaDB [(none)]> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | mysql | | performance_schema | +--------------------+
MariaDB [(none)]> source /usr/share/phpMyAdmin/sql/create_tables.sql Query OK, 1 row affected (0.00 sec) Database changed Query OK, 0 rows affected (0.00 sec) ~(中略)~
MariaDB [phpmyadmin]> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | mysql | | performance_schema | | phpmyadmin | +--------------------+
MariaDB [phpmyadmin]> SET PASSWORD FOR pma@localhost = PASSWORD('pmapass'); ←上で決めたやつ Query OK, 0 rows affected (0.00 sec) MariaDB [phpmyadmin]> FLUSH PRIVILEGES; Query OK, 0 rows affected (0.00 sec)
MariaDB [phpmyadmin]> exit Bye
再度 phpMyAdmin にログイン。環境保管領域の警告は消えている。
翻訳に関しての警告は無視。
追記:なんか間違ってる気がする。次は下記で試す。