Конфигурация PHPMyAdmin не работает из-за MySQL пароля пользователя? - PullRequest
2 голосов
/ 04 мая 2020

Здравствуйте, stackoverflow-community!

Когда я пытаюсь установить и впоследствии настроить мой phpmyadmin на моем сервере Debian, я всегда получаю это сообщение об ошибке.

ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that
  corresponds to your MySQL server version for the right syntax to use
  near 'IDENTIFIED BY 'debian123'' at line 1

вот скриншот этого

Я использую: версия Debian: 9 ; MySql версия: 8.0.19

Что я пробовал:

  • удалил phpmyadmin и переустановил его
  • попробовал другой оператор для предоставления привилегий пользователю

Я надеюсь, что вы можете помочь мне с моей проблемой, потому что я борюсь с ней довольно долго.

Заранее спасибо

~ HTL_Krems_Engineer

Ответы [ 2 ]

1 голос
/ 05 мая 2020

Это изменение в более новых версиях MySQL.

. Вы больше не можете использовать grant x on y.z to username identified by 'debian123'.

. Вы должны разбить создание пользователя на несколько этапов.

Ваш MySQL должен выглядеть следующим образом:

mysql> CREATE USER 'root'@'%' IDENTIFIED BY 'root';
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;
0 голосов
/ 12 мая 2020

Похоже, возможно, у вас установлен более старый phpMyAdmin, что может произойти, потому что по умолчанию репозиторий backports привязан к 100. Вам нужно использовать команду типа apt-get -t stretch-backports install phpmyadmin, чтобы принудительно установить более новую версию.

Stretch поставляется с phpMyAdmin 4.6.6, и, возможно, сценарий после установки (прикрепленный скриншот) не знает нового синтаксиса для создания пользователей для последних версий MySQL. Версия backports - 4.9.5, которая лучше подходит для более новых MySQL вариантов.

Один альтернативный обходной путь - ответить «нет» на вопрос, хотите ли вы, чтобы менеджер пакетов создал базу данных phpMyAdmin , либо либо вообще не использовать расширенные функции, либо вручную создайте controluser и связанные таблицы .

...