Изменен пароль в phpMyAdmin на Mac с использованием XAMPP, теперь невозможно получить доступ к localhost/phpmyadmin

Я прочитал все сообщения, которые я мог найти об этом, и никто не помог. Я удалил папку XAMPP со своего компьютера и переустановил ее из файла DMG, что, конечно, устранило проблему, но я хотел бы знать, как это исправить в будущем.

Как все началось: я вошел в phpMyAdmin на своем Macbook (который работает под управлением Mac OS X v10.7.4). Я увидел сообщение с советом сменить пароль root, который по умолчанию не имеет пароля. Я перешел на вкладку «Управление привилегиями» и изменил пароль для root на localhosts, webdev и 127.0.0.1. В каждом случае я вводил один и тот же короткий пароль и нажимал «Создать пароль», что создавало три разных хэша.

Вы знаете, что будет дальше: когда я снова попытался получить доступ к localhost/phpmyadmin, я был заблокирован с сообщением:

Error

MySQL said: 

#1045 - Access denied for user 'root'@'localhost' (using password: NO) 

phpMyAdmin tried to connect to the MySQL server, and the server rejected the connection.  You should check the host, username and password in your configuration and make sure that  they correspond to the information given by the administrator of the MySQL server. 

Поэтому я посмотрел stackoverflow, который посоветовал мне установить пароль для root в командной строке. Я создал файл «.profile» в своем пользовательском каталоге с «export PATH=/opt/local/bin:/opt/local/sbin:/Applications/xampp/xamppfiles/bin:$PATH». Это позволило мне начать сеанс mysql, но (будучи нубом) я не мог понять, что делать после этого.

Stackoverflow также сообщил, что я могу изменить пароль в config.inc.php. Я нашел этот файл в phpmyadmin/setup/frames/config.inc.php, но строка

$cfg['Servers'][$i]['password'] = '';

там не было. Я нашел эту строку в phpmyadmin/libraries/config.default.php, но этот файл содержит ужасные предупреждения против его редактирования. Я нашел еще один вероятный файл, phpmyadmin/setup/lib/common.inc.php, а также phpmyadmin/scripts/signon.php, но во всех случаях мой компьютер не позволял мне вносить какие-либо изменения, говоря, что у меня нет разрешений . Так что это расстраивало.

Я уверен, что это ошибка новичка или несколько из них, но мне было любопытно обнаружить, что ни одна из вещей, которые я искал в stackoverflow, мне не помогла. Я также хотел бы, чтобы в Mac OS было проще делать такие вещи, как создание системных файлов (например, .profile) и редактирование файлов XAMPP (например, common.inc.php). Но что вы можете сделать.


person Chris Sellers    schedule 13.05.2012    source источник


Ответы (3)


В вашей основной папке установки для phpMyAdmin вы должны создать файл config.inc.php, это файл, который вы должны изменить. Если у вас нет этого файла, создайте его:

В основной папке установки (pMA) у вас уже должен быть файл с именем: config.sample.inc.php, который содержит конфигурации по умолчанию. Сделайте копию этого файла и переименуйте его в config.inc.php, вы можете сделать это напрямую с помощью команды cp (после перехода в указанную папку):

cp ./config.sample.inc.php ./config.inc.php

Теперь внесите несколько изменений в этот новый файл:

  1. Изменить запись $cfg['Servers'][$i]['host'] = 'localhost'; на $cfg['Servers'][$i]['host'] = '127.0.0.1'; (так как в некоторых местах не работает)
  2. Напишите/измените эту строку: $cfg['Servers'][$i]['AllowNoPassword'] = false;

Примечание: под основной папкой установки phpMyAdmin я подразумеваю корневую папку установки phpMyAdmin, т.е. /<abc>/<xyz>/phpMyAdmin/.
Также сначала внесите 2-е изменение, а 1-е изменение внесите только в том случае, если хост не найден

person bool.dev    schedule 14.05.2012
comment
Спасибо! И я смог сделать файлы в phpMyAdmin/редактируемыми, разблокировав папку в информационном окне, затем добавив себя в качестве пользователя и предоставив себе права на чтение/запись. - person Chris Sellers; 15.05.2012
comment
ок, отлично, но обычно для таких вещей я использую терминал и использую sudo, и полезно немного знать командную строку, так что я продолжаю практиковаться. в любом случае, рад, что смог помочь. - person bool.dev; 15.05.2012
comment
хотя правильно давно этот ответ должен быть обесценен - person Buddhi741; 07.05.2019

Внутри \xampp\phpmyadmin\config_inc.php

добавьте или измените следующий код.
$cfg['Servers'][$i]['auth_type'] = 'cookie';

после этого попробуйте очистить данные просмотра. затем перезапустите mysql.
У меня работает. Надеюсь, это поможет вам.

person kmt    schedule 17.07.2012

Хотя @bool dev предоставил ответ выше. Я хотел бы поделиться своей версией того, как я решил это с помощью терминала. Я использую 10.12.5 (ОС Serria)

Во-первых, вам нужно иметь root-доступ

sudo su

Затем перейдите в корневую папку

cd /

Оттуда вам нужно перейти в папку phpMyAdmin.

cd Applications/XAMPP/xamppfiles/phpmyadmin/

Затем с помощью любого редактора откройте файл config.inc.php. (я использовал ви)

vi config.inc.php

Перейдите к следующему разделу в файле

/* Authentication type */
$cfg['Servers'][$i]['auth_type'] = 'config';
$cfg['Servers'][$i]['user'] = 'root';
$cfg['Servers'][$i]['password'] = ''; // This is empty, set your password here

Затем просто перезапустите сервер MySql. И альт теперь должен работать.

person Gaurav Sarma    schedule 18.06.2017