#phpmyadmin
#phpmyadmin
Вопрос:
По умолчанию пароль для доступа к php myadmin не требуется, но я хотел добавить пароль для входа.
Прочитав несколько сообщений, я внес следующие изменения в config.inc.php файл :
1) Изменен
$cfg['Servers'][$i]['auth_type'] = 'config';
to
$cfg['Servers'][$i]['auth_type'] = 'http';
2) Вставил пароль в строку $cfg[‘Servers’][$i][‘password’] = «;
3) $cfg[‘Servers’][$i][‘AllowNoPassword’] = true;
После внесения этих изменений я получаю форму входа в систему, но когда я вхожу с именем пользователя «root» и сохраненным паролем, вход в систему не работает.
Пожалуйста, предложите решение. Благодарю вас в ожидании.
Ответ №1:
Вам не нужно делать это вручную. Просто войдите в систему без пароля, перейдите к пользователям, выберите root и измените пароль там! Пользовательский интерфейс)
Комментарии:
1. После перехода на страницу пользователя я нажимаю «Редактировать предварительный просмотр» для пользователя root. На этой странице есть два раздела «Изменить пароль» и «Изменить регистрационную информацию / Скопировать пользователя». Я попытался сменить пароль с помощью обоих, но ни один из них не работает. Есть идеи.
2. Раздел смены пароля отлично работает для меня) убедитесь, что root имеет все привилегии и попробуйте еще раз
3. Затем попробуйте это: перейдите в терминал (или cmd в Windows), подключитесь к mysql и введите: УСТАНОВИТЕ ПАРОЛЬ ДЛЯ root@localhost = PASSWORD(‘yourpassword’);
Ответ №2:
После внесения этих изменений я получаю форму входа в систему, но когда я вхожу с именем пользователя «root» и сохраненным паролем, вход в систему не работает.
Это потому, что он запрашивает пароль корневого пользователя MySQL, а не пароль, который вы установили $cfg['Servers'][$i]['password'] = '';
.
phpMyAdmin не имеет явных разрешений для себя; он просто передает любое имя пользователя и пароль, которые вы предоставляете серверу MySQL. См. http://docs.phpmyadmin.net/en/latest/intro.html#a-word-about-users
При использовании конфигурации auth_type имя пользователя и пароль, которые вводятся в ваш config.inc.php
for $cfg['Servers'][$i]['user'] = '';
и $cfg['Servers'][$i]['password'] = '';
используются для входа в MySQL. При использовании других auth_types (cookie и http) эти поля полностью игнорируются, и все, что вы вводите в приглашении для входа при подключении к phpMyAdmin, передается непосредственно на сервер MySQL.
Таким образом, вы можете удалить строку «пароль», поскольку она ничего не делает. То, что вы, вероятно, намерены сделать, это, как указал Джахонгир, и изменить пароль пользователя root. Обратите внимание, что у вас почти наверняка есть как минимум два пользователя root, и вам, вероятно, следует изменить пароль для каждого из них. Какой из них вы на самом деле пытаетесь войти в систему, зависит от типа вашего соединения (tcp или сокеты) и от того, получаете ли вы доступ с другого компьютера в сети полностью. Так что проще всего просто изменить их все и не беспокоиться об этом.