Msgstr "Соединение для элемента управления, определенное в вашей конфигурации, не удалось" с phpMyAdmin в XAMPP
Я только что установил XAMPP на моем компьютере под управлением Windows XP, и я получаю сообщение об ошибке:
Не удалось подключиться для элемента управления, определенного в вашей конфигурации.
До того, как я установил XAMPP, у меня была база данных MySQL, и у нее был пароль. Я изменил и поместил пароль в config.inc.php для MySQL, и я получил эту ошибку:
<?php
if (!empty($_SERVER['HTTPS']) && ('on' == $_SERVER['HTTPS'])) {
$uri = 'https://';
} else {
$uri = 'http://';
}
$uri .= $_SERVER['HTTP_HOST'];
header('Location: '.$uri.'/xampp/');
exit;
?>
Когда я пытаюсь получить доступ к index.php, кажется, что что-то не так с установкой XAMPP. Что я могу сделать, чтобы исправить эту проблему?
Ответы
Ответ 1
- Откройте phpMyAdmin в браузере и войдите в систему с правами root.
- Создайте базу данных под названием
phpmyadmin
- Создайте пользователя с именем
pma
и установите "хост" на имя хоста или IP-адрес вашего веб-сервера (если веб-сервер и MySQL находятся в одном и том же поле, используйте localhost
), запишите пароль, и предоставить новому пользователю полный контроль над базой данных phpmyadmin
. Рекомендуется, чтобы этот пользователь не имел доступа к чему-либо другому, кроме этой базы данных.
- Перейдите в каталог установки phpMyAdmin, где вы должны найти подкаталог
sql
.
- В
sql
вы найдете файл под названием create_tables.sql
. Откройте его в текстовом редакторе.
- В phpMyAdmin выберите базу данных
phpmyadmin
и нажмите вкладку "SQL".
- Скопируйте/вставьте весь текст из
create_tables.sql
в текстовое поле и запустите запрос.
-
Откройте файл config.inc.php в каталоге установки phpMyAdmin и добавьте следующие строки (или измените существующие настройки, если они уже есть):
$cfg['Servers'][1]['pmadb'] = 'phpmyadmin';
$cfg['Servers'][1]['controluser'] = 'pma';
$cfg['Servers'][1]['controlpass'] = '<your password>';
// Note: The list below may grow as PMA evolves and more control tables are added
// Use your common sense! Don't just blindly copypasta, look at what it means!
$cfg['Servers'][1]['bookmarktable'] = 'pma_bookmark';
$cfg['Servers'][1]['relation'] = 'pma_relation';
$cfg['Servers'][1]['userconfig'] = 'pma_userconfig';
$cfg['Servers'][1]['table_info'] = 'pma_table_info';
$cfg['Servers'][1]['column_info'] = 'pma_column_info';
$cfg['Servers'][1]['history'] = 'pma_history';
$cfg['Servers'][1]['recent'] = 'pma_recent';
$cfg['Servers'][1]['table_uiprefs'] = 'pma_table_uiprefs';
$cfg['Servers'][1]['tracking'] = 'pma_tracking';
$cfg['Servers'][1]['table_coords'] = 'pma_table_coords';
$cfg['Servers'][1]['pdf_pages'] = 'pma_pdf_pages';
$cfg['Servers'][1]['designer_coords'] = 'pma_designer_coords';
-
Сохраните и закройте файл.
ВАЖНО. PMA загружает конфигурацию при входе в систему, оценивает ее и сохраняет в данных сеанса, поэтому сообщение не исчезнет, пока вы это сделаете:
- Выйдите из phpMyAdmin и войдите снова
Проблема решена.
Ответ 2
Если вы пришли сюда и используете Debian/Ubuntu (или любой другой дистрибутив на основе dpkg), выполните следующую команду:
sudo dpkg-reconfigure phpmyadmin
Пакет phpmyadmin содержит script для выполнения этой операции для вас, все, что ему нужно, - это пользователь с разрешениями. sudo не требуется, если вы вошли в систему как root, конечно.
EDIT: Возможно, стоит попробовать удалить текущего пользователя phpmyadmin.
Ответ 3
Просто закомментируйте фрагменты кода "Пользователь для расширенных функций" и "Расширенные функции phpMyAdmin" в config.inc.php
.
Ответ 4
На Убунбту.
Сообщение Ben близко, но это не тот пароль root, который является проблемой, проблема, которую я обнаружил, я создал пароль для базы данных phpmyadmin, когда я ее установил.
Этот пароль не переносится в установку на ubuntu, поэтому переменная $dbpass = ''; в файле настроек базы данных пуст, а не пароль, который вы установили.
- Чтобы проверить, что у вас есть правильный пароль в командной строке для входа в mysql, используйте следующую команду: mysql -u phpmyadmin -p попробуйте пустой пароль, который я нашел. Мне отказали в доступе, снова введите команду, используя пароль, который вы установили во время установки, Если он входит в систему, вы теперь знаете, что такое пароль.
- Изменить /etc/phpadmin/config-db.php и изменить $dbpass = ''; на $dbpass = 'Ваш пароль'; и сохраните файл.
- Изменить /etc/dbconfig-common/phpmyadmin.conf изменить dbc_dbpass = ''; dbc_dbpass = 'Ваш пароль'; и сохраните файл.
Закройте браузер и перезагрузите его, и теперь вы обнаружите, что сообщение прошло.
Ответ 5
Это работало для меня с phpmyadmin под Ubuntu 16.04:
Я отредактировал /etc/phpmyadmin/config.inc.php и изменил следующие 2 строки:
$cfg['Servers'][$i]['controluser'] = 'root';
$cfg['Servers'][$i]['controlpass'] = 'thepasswordgiventoroot';
Ответ 6
Вы недавно изменили свой пароль пользователя MySQL Server? Если ответ "ДА", это является причиной ошибки/предупреждения внутри консоли phpMyAdmin. Чтобы устранить проблему, просто отредактируйте файл config-db.php phpMyAdmins и настройте правильный пароль базы данных.
Первый ответ слишком возится с моим взглядом, и второй ответ не работает для меня. Итак:
В Linux-серверах файл обычно находится в папке
/etc/phpmyadmin/config-db.php
или
/etc/phpmyadmin/config-db.php
Пример: (Мой файл выглядел так, и я сменил пользователя с phpmyadmin
на admin
, имя пользователя, которое я создал для поддержки моей базы данных через phpmyadmin, и поместил соответствующий пароль.
$dbuser='phpmyadmin';
$dbpass=''; // set current password between quotes ' '
$basepath='';
$dbname='phpmyadmin';
$dbserver='';
$dbport='';
$dbtype='mysql';
кредиты: http://tehnoblog.org/phpmyadmin-error-connection-for-controluser-as-defined-in-your-configuration-failed/
Ответ 7
Проблема заключается в том, что пароль пользователя phpMyAdmin (обычно: pma) не соответствует пользователю mysql: пароль pma (тот же пользователь).
Чтобы исправить это,
1. Задайте пароль для пользователя pma здесь:
"C:\XAMPP\PHPMYADMIN\config.inc.php"
$cfg ['Servers'] [$ i] ['controlpass'] = 'your_new_phpmyadmin_pass';
(должно быть похоже на строку 32)
Затем перейдите в mysql, войдите в систему как root, перейдите к: (я использовал phpmyadmin для перехода сюда)
База данных: mysql "Таблица: пользователь
Отредактируйте пользователя: pma
Выберите "Пароль" из списка функций (левый столбец) и установите "your_new_phpmyadmin_pass" в правом столбце и нажмите "go".
Перезагрузите сервер mysql.
Теперь сообщение должно исчезнуть.
Ответ 8
Я просто делаю изменения в файле config.inc.php. В этой ссылке указан пароль: $cfg ['Servers'] [$ i] ['password'] = 'ваш пароль'; и теперь он отлично работал.
Ответ 9
Только что установив XAMPP сегодня, я решил использовать другой порт по умолчанию для mysql, что было ужасно. Не забудьте добавить эти строки в phpMyAdmin config.inc.php
:
$cfg['Servers'][$i]['host'] = 'localhost';
$cfg['Servers'][$i]['port'] = 'port';`