Зберігання конфігурації phpMyAdmin не повністю налаштовано


14

Я набрав apt-get install phpmyadminпомилку і сказав, що вона не може підключитися до mysql (проблема сокета). Це було нормально, тому що я забув встановити mysql раніше , тому я вибрав "перервати" перш за все варіанти, надані phpmyadmin.

Потім sudo taskselі встановлюється lamp server.

Після закінчення я побіг:

apt-get remove --purge phpmyadmin
apt-get install phpmyadmin

Тоді, mysql -u root -pале я отримав таку помилку:Access denied for the following user 'root'@'localhost'

Тому я вирішив цю проблему, зробивши:

mysql
SET PASSWORD FOR root@localhost=PASSWORD('mypassword'); 
GRANT ALL PRIVILEGES ON *.* TO root@localhost IDENTIFIED BY 'mypassword' WITH GRANT OPTION;

Потім я успішно увійшов у localhost / phpmyadmin , але знайшов це повідомлення:

Зберігання конфігурації phpMyAdmin не повністю налаштовано, деякі розширені функції було вимкнено. Щоб дізнатися, чому натисніть тут.

Я натиснув тут , і це показало мені: введіть тут опис зображення

Чи можу я мирно продовжувати роботу з mysql / phpmyadmin?


Так, це правильно. Переконайтесь, що всі директиви $ cfg ['Сервери'] [$ i] не коментовані!
kratos

Відповіді:


26

Відповідь ОП :

Я вирішив цю проблему наступним чином:

cd /usr/share/doc/phpmyadmin/examples
sudo gunzip create_tables.sql.gz 
mysql -u root -p < create_tables.sql
mysql -u root -p -e 'GRANT SELECT, INSERT, DELETE, UPDATE ON phpmyadmin.* TO 'pma'@'localhost' IDENTIFIED BY "pmapassword"'

Потім відредаговано /etc/phpmyadmin/config.inc.phpв цих рядках:

/* Optional: User for advanced features */
$cfg['Servers'][$i]['controluser'] = 'pma';
$cfg['Servers'][$i]['controlpass'] = 'pmapassword';

Знову ввійшов у phpmyadmin, а потім попереджувальне повідомлення зникло.

Також зауважте, що у вас може з’явитися нове попередження про зберігання phpmyadmin, не повністю налаштоване. Це може бути викликано тим, що вам потрібно повідомити phpmyadmin назву таблиць, щоб використовувати їх функції. Це можна зробити редагуванням /etc/phpmyadmin/config.inc.phpу цих рядках:

$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';

Зверніть увагу на подвійне підкреслення __.


У мене все ще була незначна проблема, я повинен був прокоментувати таке:
itnet7

// $ cfg ['Сервери'] [$ i] ['Контролер'] = $ dbuser; // $ cfg ['Сервери'] [$ i] ['controlpass'] = $ dbuserpwd; бути pma та встановленим паролем.
itnet7

1
Не забудьте вийти та знову увійти.
nwolybug

@nwolybug mysql користувацькі дозволи застосовуються негайно
Braiam

1
і не забувайте, щоб відобразити зміни, які потрібно знову увійти в phpmyadmin. Оновлення сторінки не працюватиме.
курі

2

Я також повинен був змінити всі назви таблиць у /etc/phpmyadmin/config.inc.phpподвійних підкресленнях, наприклад.

$cfg['Servers'][$i]['bookmarktable'] = 'pma__bookmark'; 

тому що це була таблиця, створена після create_tables.sqlвиконання.


2

Це допомогло мені:

  1. sudo vim /etc/phpmyadmin/config.inc.php
  2. Додайте наступні рядки з іншими $ cfg ['Сервери'] [$ i]:

    $cfg['Servers'][$i]['central_columns'] = 'pma__central_columns'; $cfg['Servers'][$i]['favorite'] = 'pma__favorite'; $cfg['Servers'][$i]['navigationhiding'] = 'pma__navigationhiding'; $cfg['Servers'][$i]['recent'] = 'pma__recent'; $cfg['Servers'][$i]['savedsearches'] = 'pma__savedsearches'; $cfg['Servers'][$i]['table_uiprefs'] = 'pma__table_uiprefs'; $cfg['Servers'][$i]['tracking'] = 'pma__tracking'; $cfg['Servers'][$i]['userconfig'] = 'pma__userconfig'; $cfg['Servers'][$i]['usergroups'] = 'pma__usergroups'; $cfg['Servers'][$i]['tracking'] = 'pma__users';

  3. Тепер спробуйте увійти до localhost / phpmyadmin. Повідомлення про помилку більше не повинно з’являтися.

Коротше кажучи, будь-яка помилка компонента, що відображається, відображається просто Додати:

$cfg['Servers'][$i][COMPONENT] = 'pma__COMPONENT';

в /etc/phpmyadmin/config.inc.php


1

Команда VestaCP створила та успішно протестувала сценарій, щоб позбутися цього дратівливого повідомлення "Сховище конфігурації phpMyAdmin не налаштовано повністю, деякі розширені функції були відключені". Сподіваємося, виправлення стане корисним та допоможе користувачам. Перейдіть на сторінку Github для отримання коду.

Сценарій:

  • Працює з кореня користувача
  • Робить резервну копію /etc/phpmyadmin/config.inc.phpв/root
  • Змінює значення в /etc/phpmyadmin/config.inc.php
  • Додає користувача mysql pmaта таблицю phpmyadmin(якщо користувач або таблиця вже є, сценарій видалить їх!)
  • Завантажує та додає таблицю для бази даних phpmyadmin
  • Очищає тимчасові файли, включаючи залишки pma.txt(містить пароль для pma @ localhost) та стару конфігурацію

1

Для мене: я повинен редагувати /etc/phpmyadmin/config-db.php у цьому рядку:

$dbname='phpmyadmin';

це мені допомогло. без нього він працював лише для користувача root db, з цим також для іншого.
луки

0

Жодне із запропонованих тут рішень не працювало для мене.

Ця проблема відбувається з оновленням mysql до версії 5.6 або 5.7.

Я вирішив це, встановивши phpmyadmin 4.7 версії.

Насолоджуйтесь

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.