Can not login to phpmyadmin with root user
I am having trouble to login to with phpmyadmin in Ubuntu system.
Username — root Password — empty
but still it show me error like below
Help me to solve it Thank you.
![]()
3 Answers 3
I sloved it with below steps:
1) Open config.inc.php file
2) Change file permition to write
3) Add below line to the file
4) Change file parmissions to original again
5) Restart server
- Successfully logged in to phpmyadmin.
![]()
This is the correct answer:
sudo dpkg-reconfigure -plow phpmyadmin
in terminal, type
The user file will get open Just check the username like
And password like
Just copy this username and password without quotes in login page.
![]()
![]()
Not the answer you're looking for? Browse other questions tagged php ubuntu phpmyadmin ubuntu-17.04 or ask your own question.
Linked
Related
Hot Network Questions
Subscribe to RSS
To subscribe to this RSS feed, copy and paste this URL into your RSS reader.
Site design / logo © 2022 Stack Exchange Inc; user contributions licensed under cc by-sa. rev 2022.6.10.42345
By clicking “Accept all cookies”, you agree Stack Exchange can store cookies on your device and disclose information in accordance with our Cookie Policy.
Решение проблемы с ошибкой #1698 — Access denied for user ‘root’@’localhost’
Если при попытке входа в phpMyAdmin вы видите ошибку:
то данная статья поможет вам разобраться в проблеме и устранить её.
MySQL 5.7 изменила модель безопасности: теперь вход в MySQL под рутом (root) требует sudo (при этом пароль всё равно может быть пустым). Т.е. phpMyAdmin невозможно использовать под пользователем рутом. Подробное объяснение смотрите в статье Аутентификация по паролю и unix_socket в MySQL и MariaDB.
Самым простым (и самым безопасным) решением будет создать нового пользователя и предоставить ему требуемые привилегии.
Но начнём мы с другого решения:
Разрешить пользователю root подключаться к MySQL и MariaDB без sudo
Для получения доступа к базе данных MySQL/MariaDB обычному пользователю без использования sudo привилегий, зайдите в приглашение командной строки MySQL
и запустите следующие команды:
Переключиться на аутентификацию по паролю можно следующим SQL запросом:
Обратите внимание, что вам нужно ввести ПАРОЛЬ.
Затем попробуйте войти в базу данных без sudo, как показано ниже.
Это устаревший метод, он не работает в новых версиях MariaDB, но может по-прежнему работать в MySQL.
Для получения доступа к базе данных MySQL/MariaDB обычному пользователю без использования sudo привилегий, зайдите в приглашение командной строки MySQL
и запустите следующие команды:
Затем перезапустите службу MySQL и попробуйте войти в базу данных без sudo, как показано ниже.
Создание нового пользователя для работы с MySQL через phpMyAdmin
1. Подключитесь к mysql
2. Создайте пользователя для phpMyAdmin
Запустите следующие команды (замените some_pass на желаемый пароль):
Если ваш phpMyAdmin подключается к localhost, то этого должно быть достаточно.
3. Опционально: разрешение удалённых соединений
Помните: разрешение удалённому пользователю иметь все привилегии – это вопрос безопасности, имейте это ввиду, выполняя последующие шаги. Если вы хотите, чтобы этот пользователь имел те же привилегии во время удалённых подключений, дополнительно выполните (замените some_pass на пароль, используемый на Шаге #2):
4. Обновите phpMyAdmin
Используя sudo, отредактируйте файл /etc/dbconfig-common/phpmyadmin.conf обновив значения пользователь/пароль в следующих секциях (замените some_pass на пароль, используемый на шаге #2):
Связанные статьи:
-
(100%) (56%) (56%) (56%) (55.2%) (RANDOM — 0.8%)
Рекомендуемые статьи:
23 Комментарии
Пипец, почти всю ночь промучился с этим вопросом и чего только не перепробовал, а в итоге… Как вы говорите:
"MySQL 5.7 изменила модель безопасности: теперь вход в MySQL под рутом (root) требует sudo (при этом пароль всё равно может быть пустым). Т.е. phpMyAdmin невозможно использовать под пользователем рутом."
Нет, вы "врубитесь" еще раз:
"MySQL 5.7 изменила модель безопасности: теперь вход в MySQL под рутом (root) требует sudo"
Потратил столько времени и сил, а Вы описали суть проблемы всего несколькими словами.
Создал нового пользователя 'phpMyAdmin' и всё заработало.
Огромное СПАСИБО за помощь!
P.S. Ранее таких трудностей не было — при установке MySQL он просил указать пароль для root после чего всё работало без проблем. В этот же раз при установке пароль для root не спрашивало и после под root пускало только с sudo (phpMyAdmin таким образом не мог авторизоваться). Не зная о изменении модели безопасности я и попал в тупик
и запустите следующие команды:
Затем перезапустите службу MySQL и попробуйте войти в базу данных без sudo, как показано ниже.
После этих манипуляций совсем зайти не могу
Аналогичная проблема, помогло это
Братик, дай расцулую в дёсна!
Я после тебя !
Мда. Теперь тупо не пускает, на все комманды: mysql, mysql -u root -p, Enter password: Ответ один: ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
Такая ошибка возникает при неправильном имени пользователя или пароле. Если вы вводили команды из статьи или из комментариев, в некоторых из них вместо заполнителя нужно ввести свой новый пароль. Видимо, вы этого не сделали.
Спасибо, очень помогло!
Спасибо автор, у тебя отличный сайт! В закладки!
Привет, где запускать эти команды?
Приветствую! Эта инструкция для Linux. На Windows у меня такой проблемы нет, устанавливал по этой инструкции: https://hackware.ru/?p=21
Но у меня такое ощущение, что вы просто неверно вводите пароль. Если сделаете скриншот или хотя бы скопируете полный текст сообщения, то можно будет сказать точнее.
вот скриншот раньше вводил все было нормально, а после переустановки вот такая ошыбка.

Здесь решение для ошибки 1698, а у вас ошибка 1045. При установке (обновлении) у вас должен был запроситься пароль для root.
Если это какая-то сборка, то спросите на официальном сайте.
Если это официальная MySQL/MariaDB то можно просто сбросить пароль root. Но для этого вам нужно найти файл mysqld.exe — он в той папке, где установлена MySQL.
Если найдёте этот файл, то откройте командную строку, для этого нажмите Win+r и введите cmd и нажмите Enter. В открывшееся окно перетащите этот файл, добавьте опцию —version и нажмите Enter:
Должно вывестись что-то вроде такого:
Если всё получится, то напишите сюда, скажу что делать дальше.
вот что у меня получилось


Для начала попробуйте следующие учётные данные:
- Пользователь: root
- Пароль: root
Если не поможет, видимо авторы Open Server говорят пароль входа только тем, кто сделал донат ))))))))
В общем если не поможет, то перейдите к статье «Как сбросить пароль root MySQL или MariaDB в Windows» которую я специально написал по вашему вопросу, там всё подробно и пошагово описано как сбросить забытый пароль MySQL и MariaDB.
спасибо огромное помогло ввести пароль рут)
Ребята, выручайте. Всё перепробовал.
После нескольких попыток восстановить пароль(который был по умолчанию без пароля, то есть не пускало без пароля) перестало заходить и через sudo mysql. Я удалил полностью по мануалу. Далее начал устанавливать и теперь заходит через sudo mysql.
Server version: 8.0.27-0ubuntu0.20.04.1 (Ubuntu)
Как было указано в мануале установил MEDIUM пароль: '12345678'
И всё-равно при входе ошибка 1698:
ERROR 1698 (28000): Access denied for user 'root'@'localhost'
То есть если при установке не ставишь пароль, он говорит пароль неверный. Если ставишь пароль, то всё-равно пароль неверный. Что я делаю не так?
Вы устанавливали пароль root’а с помощью mysql_secure_installation? Единственная идея, что вы как-то неправильно установили пароль.
Да, устанавливал. Без установки пароля всё-равно просит его ввести. После первой установки я не трогал пароль, то есть его не должно было быть. По идее оставляешь поле пустым, жмёшь enter и должно войти, но там была эта же ошибка 1698. Так я нашёл эту статью. Пробовал варианты восстановления пароля отсюда, на каком то из этапов словил ошибку. После чего перестало полностью пускать даже через sudo, удалил полностью, переустановил с паролем и всё-равно не работает. Какой пароль нужно установить, чтобы он работал? Спасибо.
Проблема решена. Для тупых как я нужен манул "Как правильно придумать пароль, чтобы система его приняла".
Я написал 8 строчных букв, одну заглавную, одну цифру и один спец символ(например: qwertyuiQ1!). Пароль принят и теперь заходит в учётку. Думаю у большинства новичков такая же ошибка. 3 дня потратил на это, ужас!
То есть получается, что корень проблемы в том, что пароль не соответствовал критериям безопасности? Значит на этапе установки пароля программа сообщала об этом — скорее всего, вы просто не обратили внимание на это сообщение.
Кстати, требования к паролю можно изменить, об этом написано тут.
Корень проблемы в том, что по умолчанию пароль должен был отсутствовать, но в систему не пускало без пароля. На этапе установки программа в принципе не спрашивает про пароль. Скорее всего первым делом нужно включить поддержку паролей(как описано в одном из ваших мануалов, а может и зарубежных, их тоже курил). Почему то у меня по умолчанию эта функция была не активна. После включения функции даёт создать учётку и передать права.
Второй проблемой стало то, что при установке некорректного пароля(до включения поддержки паролей) система не ругается как будто всё хорошо и пароль принят. При попытке зайти по установленному вручную паролю выдаёт ошибку как в самом начале.(В этом моменте каждый начинает паниковать и перебирать все способы пока не сломает всё окончательно :))
После включения поддержки паролей при попытке установить некорректный пароль получаем, наконец-то, ошибку несоответствия и там уже проще разобраться. Вбиваем ошибку в поиск и находим требования к созданию пароля. По умолчанию поддержка паролей отключена, но не пускает. Бред короче
Итог: заходим через комманду sudo mysql, включаем поддержку паролей validate_password (
select plugin_name, plugin_status from information_schema.plugins where plugin_name like 'validate%' ;
install plugin validate_password soname 'validate_password.so' ;
, создаём новую учётку с логином вместо root (например: 'admin') с корректным паролем(например: 'qwertyuiQ!1') и передаём ей все права (
CREATE USER 'admin' @ '%' IDENTIFIED BY ' qwertyuiQ!1 ';
GRANT ALL PRIVILEGES ON *.* TO 'admin' @ '%' WITH GRANT OPTION ;
Далее уже входим в новую учётку( через команду: mysql -u admin -p). Скорее всего такая последовательность.
Vesta Control Panel — Forum
phpmyadmin, логин из-под root, нужный пароль root
phpmyadmin, логин из-под root, нужный пароль root
Post by prmres » Sun Nov 18, 2018 9:42 pm
Камрады, здравствуйте.
Возникла необходимость развернуть бекап сайта локально.
Поставил на свежую виртуалку CentOS7, установил в *advanced-режиме* VestaCP, но столкнулся с «проблемой» — не могу зайти в phpmyadmin под root.
Был несколько озадачен: «как так? пароль при установке вводил, но он не подходит и его надо где-то подсмотреть».
Покопался в интернетах, в итоге «проблема» решена, хочу поделиться.
1. смотрим пароль root
в файле /root/.my.cnf
—-
имхо не очень удобно иметь этот пароль таким каким *ты его сам не ставил*
наверное его можно\надо сменить на *нужный*
+ с некоторых пор в MariaDB\mySql по умолчанию ROOT по умолчанию соединяется только через UNIX Sockets
однако, на сколько я понимаю «эта фишка» при установке VestaCP — *подкручивается*, ибо логин из-под root с «подсмотренным» паролем проходит
но если *вдруг* кому то понадобится, то ниже *рецепт*
—-
2. меняем пароль root в MariaDB\mySql и отключаем (если надо) *запрет* логина root
—-
командой «update user set plugin=» where User=’root’;» убираем *требование* для логина root через unix_socket
—-
3. правим конфиги
в файлах
/root/.my.cnf
/usr/local/vesta/conf/mysql.conf
указываем «ВАШ_НОВЫЙ_ПАРОЛЬ» (тот, который был установлен в п.2)
всё, теперь в phpmyadmin можно логиниться под root с *нужным* паролем
4. при необходимости «вернуть как было»
PS
*операция* проведена на CentOS7 + VestaCP
на Ubuntu всё то же самое, VestaCP не использовалась, но использовались MariaDB + phpmyadmin
PPS
казнить нельзя помиловать
сообщение носит информативный характер, без цели обсуждения «опасности\безопасности» производимых действий, сообщение служит личным целям «что б не забыть»