PHPMyAdmin не подключается после смены пароля root

Я установил Xampp (для Windows). Я с удовольствием использовал его со всеми его функциями.

Затем я хотел изменить пароль MySql. Я установил случайно сгенерированный пароль (rCZ4Xnz78zbLY2Vh). Затем PHPMyAdmin перестал входить в систему. Он начал выдавать следующее сообщение об ошибке, и с тех пор оно остается прежним:

Error

MySQL said:
Cannot connect: invalid settings.

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.

Затем я отредактировал файл «config.inc.php» PHPMyAdmin и сделал его содержимое точно таким, как показано ниже:

<?php

/* Servers configuration */
$i = 1;
$cfg['Servers'][$i]['host']         = '127.0.0.1';
$cfg['Servers'][$i]['port']         = '3306';
$cfg['Servers'][$i]['ssl']          = FALSE;
$cfg['Servers'][$i]['connect_type'] = 'tcp';
$cfg['Servers'][$i]['extension']    = 'mysql';
$cfg['Servers'][$i]['compress']     = FALSE;
$cfg['Servers'][$i]['controluser']  = 'root';   
$cfg['Servers'][$i]['controlpass']  = 'rCZ4Xnz78zbLY2Vh';
$cfg['Servers'][$i]['auth_type']    = 'config';
$cfg['Servers'][$i]['user']         = 'root';
$cfg['Servers'][$i]['password']     = 'rCZ4Xnz78zbLY2Vh';
$cfg['Servers'][$i]['nopassword']   = TRUE;

/* rajk - for blobstreaming */
$cfg['Servers'][$i]['bs_garbage_threshold']     = 50;
$cfg['Servers'][$i]['bs_repository_threshold']  = '32M';
$cfg['Servers'][$i]['bs_temp_blob_timeout']     = 600;
$cfg['Servers'][$i]['bs_temp_log_threshold']    = '32M';

/* Other settings */
$cfg['blowfish_secret'] = '';
$cfg['DefaultCharset']  = 'utf-8';
$cfg['UploadDir']       = '';
$cfg['SaveDir']         = '';

?>

Но я смог подключиться к серверу MySql через командную строку с тем же паролем.

C:\Users\hkBattousai>mysql.exe --user=root --password=rCZ4Xnz78zbLY2Vh
mysql.exe: Unknown OS character set 'cp857'.
mysql.exe: Switching to the default character set 'latin1'.
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 21
Server version: 5.5.27 MySQL Community Server (GPL)

Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql>

Затем я удалил пароль через интерфейс командной строки:

пользователь-пароль-удален

Я также удалил пароль из файла config.inc.php. Соответствующие строки в этом файле теперь:

$cfg['Servers'][$i]['controluser']  = 'root';
$cfg['Servers'][$i]['controlpass']  = '';
$cfg['Servers'][$i]['user']         = 'root';
$cfg['Servers'][$i]['password']     = '';

В настоящее время это странно, но я могу подключиться с удаленным паролем, но не могу подключиться с пустым паролем:

C:\Users\hkBattousai>mysql.exe --user=root --password=rCZ4Xnz78zbLY2Vh  // Connects
C:\Users\hkBattousai>mysql.exe --user=root --password=                  // Error given

Я хочу назначить этому пользователю другой случайный пароль, и я хочу получить доступ к своей базе данных через PHPMyAdmin, как я делал это раньше при новой установке Xampp. Что я должен делать? Я действительно запутался, и мне нужна ваша помощь.

Это похоже на то, что содержимое файла config.inc.php игнорируется. Я скопировал его из файла шаблона config.sample.inc.php и изменил его содержимое. Теперь он находится в каталоге \Xampp\phpmyadmin\.


Версии:

Xampp   : 3.1.0
MySQL   : 5.5.27
PHP     : 5.4.7
Apache  : 2.4
Windows : 7 Ultimate x64 SP1

person hkBattousai    schedule 22.10.2012    source источник


Ответы (4)


Вам нужно отредактировать файл config.inc в каталоге phpMyAdmin (вероятно, C:\xampp\phpMyAdmin) и изменить эту строку, чтобы она соответствовала паролю, который вы ввели для root в phpMyAdmin.

$cfg['Серверы'][$i]['пароль'] = ' ';

person Nick    schedule 11.09.2013
comment
Спасибо за простой понятный ответ! Я всю жизнь не мог понять, в каком конфигурационном файле была нужная мне информация, и я изо всех сил пытался найти ее в Google, потому что я точно не знал, что ищу! Теперь я могу продолжить работу в классе, так как моя база данных больше не заблокирована. - person SamG; 18.04.2016
comment
Добро пожаловать. Я был так же расстроен, когда у меня была эта проблема. - person Nick; 27.01.2017
comment
Я больше не использую Xampp. Теперь я использую Vagrant, вы можете изучить его, если вашей целевой средой является Linux. - person Nick; 27.01.2017

Если вы установили WAMP, перейдите в [корень wamp]\apps[установка phpmyadmin] и найдите файл config.inc.php. Затем вам нужно изменить следующую запись на новый пароль пользователя root.

$cfg['Серверы'][$i]['пароль']

сохраните файл и не забудьте перезапустить службы WAMP. Теперь это должно работать как шарм :)

person ChannaB    schedule 19.12.2013

Вам нужно указать фактический пароль. Не зашифрованный пароль в конфигурационном файле

person Pardeep Kumar    schedule 22.10.2012
comment
Строка rCZ4Xnz78zbLY2Vh не является хэшем пароля; это сам пароль. - person hkBattousai; 22.10.2012

Вот решение для компьютера с Windows: когда вы изменили пароль root, скажем, на admin, и теперь, когда вы получаете доступ к http://localhost/phpmyadmin вы видите следующий экран введите здесь описание изображения

Откройте файл XAMPP_SETUP/phpMyAdmin/config.inc.php, измените config на cookie и добавьте пароль. введите здесь описание изображения введите здесь описание изображения И снова получите доступ к http://localhost/phpmyadmin !!

person Om Sao    schedule 17.10.2019