Подтвердить что ты не робот

PhpMyAdmin бросает # 2002 не может войти на сервер mysql phpmyadmin

Я установил MySQL server enterprise 5.1 на свой локальный компьютер, и теперь я хочу установить phpMyAdmin, но он не работает.

У меня есть инфракрасный phpMyAdmin в корневой каталог сервера и просматривается на "localhost/phpMyAdmin/setup/index.php", запущен новый сервер, и единственный параметр, который я изменил, заполняет мой пароль MySQL в поле "Пароль для конфигурации Auth"

Итак, теперь, когда я пытаюсь войти в систему, я получаю сообщение об ошибке: "# 2002 не удается войти в сервер mysql phpmyadmin"

Кто-нибудь знает, что случилось? У меня была эта проблема со вчерашнего дня.

4b9b3361

Ответ 1

Если вы получаете ошибку #2002 Cannot log in to the MySQL server при входе в phpmyadmin, попробуйте отредактировать phpmyadmin/config.inc.php и измените:

$cfg['Servers'][$i]['host'] = 'localhost';

в

$cfg['Servers'][$i]['host'] = '127.0.0.1';

Решение Блог Райана

Изменить (20-март-2015):

Обратите внимание, что если вы используете новую установку, config.inc.php может и не существовать. Вам нужно переименовать/скопировать config.sample.inc.php, а затем изменить соответствующую строку

Ответ 2

Это старый, но поскольку это первый результат в Google,

Обратите внимание, что это также происходит, когда ваша служба MySql недоступна,

Я исправил это, просто перезапустив MySQL Server, используя:

/etc/init.d/mysql restart

в SSH (команда для сервера CentOS/CPanel)

Ответ 3

Фон: Я использую Linux Mint 13. В моем случае эта ошибка произошла, когда я перезапустил компьютер, и мой DHCP назначил новый локальный IP-адрес (от 192.168.0.2 до 192.168.0.4) на мой рабочий стол.

sudo gedit /etc/mysql/my.cnf

Обновить

bind-address = 192.168.0.2

к

bind-address = localhost

Это устранило проблему. Наслаждайтесь.

Ответ 4

Это также может быть вызвано, если вы забудете (как и я), чтобы переместить config.inc.php в нужное место после завершения настройки script.

После создания папки config и выполнения chmod o+rw config и перехода к localhost/phpmyadmin/setup и после этих шагов вам нужно вернуться в командную строку и завершить работу:

mv config/config.inc.php .         # move file to current directory
chmod o-rw config.inc.php          # remove world read and write permissions
rm -rf config                      # remove not needed directory

См. полные инструкции https://phpmyadmin.readthedocs.org/en/latest/setup.html

Ответ 5

После выполнения всех вышеперечисленных предложений здесь зафиксирована ошибка # 2002.

Добавьте следующую строку в файл config.inc.php и измените номер на свой порт MySQL:

$cfg['Servers'][$i]['port'] = '3307'; // MySQL port

У меня было несколько экземпляров mysql, и в этом случае я обновил my.ini для запуска MySQL на порт 3307, но не обновил phpMyAdmin, чтобы отразить новый порт. В моем случае строка для порта не существовала в файле config.inc.php, поэтому я не знал, что он нуждается в обновлении.

Ответ 6

Вы настроили MySQL на своем компьютере? Похоже, вы используете Windows; MySQL работает как "Сервис" на вашем компьютере (щелкните правой кнопкой мыши Мой компьютер → Управление → Службы).

Ответ 7

Я прошел через весь процесс stackoverflow для этой ошибки, и ничто не решило мою проблему. Мне удалось войти в mysql прямо из командной строки linux, но с тем же пользователем и паролем не удалось войти в phpmyadmin.

Итак, я бил головой о стену в течение половины дня, пока не понял, что даже не читал config.inc.php в /etc/phpmyadmin (единственное место, где оно было расположено btw на основе "find/-iname" config.inc.php ". Поэтому я изменил хост в /usr/share/phpMyAdmin/libraries/config.default.php, и он наконец-то сработал.

Я знаю, что, вероятно, есть еще одна проблема с тем, почему он не читает конфигурацию из папки /etc/phpmyadmin, но на данный момент меня не беспокоит: P

TL;DR; если ваши настройки вообще не применяются, попробуйте внести изменения в/usr/share/phpMyAdmin/libraries/config.default.php

Ответ 8

Я тоже испытал то же самое, надеюсь, это поможет.

cd /etc/init.d
./mysql start

войдите в систему для доступа к mysql и phpmyadmin

Ответ 9

Это случилось со мной, когда я изменил тип экземпляра моего сервера AWS.

#2002 Cannot log in to the MySQL server также может возникать, когда служба mysqld не запускается.

Итак, прежде всего вам нужно выполнить:

$ sudo service mysqld restart

Это даст вам:

$ sudo service mysqld restart
Stopping mysqld:                                           [  OK  ]
Starting mysqld:                                           [  OK  ]

После этого ошибка не появится.

P.S. В экземплярах EC2 также следует изменить хост от localhost до 127.0.0.1, как указано в верхнем ответе.

Ответ 10

  • Щелкните правой кнопкой мыши Мой компьютер → Управление → Сервисы
  • Выберите "Услуги" в разделе "Услуги и приложения" на правой панели.
  • Затем выполните поиск службы "Zend Development".
  • Когда вы его найдете, дважды щелкните, чтобы запустить эту службу.

Теперь вы должны войти в phpMyAdmin.

Ответ 11

В моей системе config.inc.php не существовало, но config.sample.inc.php существовало. Попробуйте скопировать образец script в config.inc.php

Ответ 12

Если у вас была эта проблема несколько раз в нашей настройке, я сделал контрольный список.

Предполагается, что phpMyAdmin подключается локально к MySQL с использованием сокета UNIX, а не TCP/IP.

Сокеты UNIX должны быть немного быстрее, так как они имеют меньшие накладные расходы и могут быть более безопасными, поскольку они могут быть доступны только локально.

Сервис

  • Работает ли служба mysqld? service mysqld status
  • .. Если не service mysqld start
  • Сработал ли конфиг с момента запуска службы? service mysqld restart

Конфигурация MySQL (my.cnf)

  • Убедитесь, что нет настроенного клиентского протокола не-сокета, например. protocol=tcp
  • Убедитесь, что местоположение сокета доступно и имеет правильные разрешения

Конфигурация PHP (php.ini)

Если вы можете подключиться локально из командной строки, но не из phpMyAdmin, а файл сокета не находится по умолчанию:

  • Установите сокеты mysqli по умолчанию в новое местоположение: mysqli.default_socket = *location*
  • ... Я также установил pdo_myql.default_socket и mysql.default_socket, чтобы быть уверенным
  • Перезапустите веб-службу (httpd в моем случае) service httpd restart

phpMyAdmin Config (config.inc.php)

  • Убедитесь, что для хоста установлено значение localhost: $cfg['Servers'][$i]['host'] = 'localhost';
  • Здесь также можно установить расположение сокета: $cfg['Servers'][$i]['socket'] = '*location*';

N.B.

Как указано @chk; Установка $cfg['Servers'][$i]['host'] с localhost на 127.0.0.1 просто заставляет соединение использовать TCP/IP, а не использовать сокет и является более обходным решением, чем решение.

Конфигурация MySQL bind-address= также влияет только на соединения TCP/IP.

Если вам не нужны удаленные подключения, рекомендуется отключить прослушивание TCP/IP с помощью skip-networking.

Ответ 13

В операционной системе ubuntu в файле /etc/php 5/apache2/php.ini создаются конфигурации, которые эта страница.

Ответ 14

У меня была такая же проблема после того, как сервер подвергся атаке с использованием DDoS (на самом деле это инструмент тестирования проникновения).

Я сначала отправился в /etc/var/mysql/error.log, чтобы увидеть, как InnoDB блокировал файл.

Проблема была немедленно устранена перезагрузкой сервера, однако это не было в будущем.

Ответ 15

CAUTION: This method completely removes MySQL data!

У меня такая же проблема в Ubuntu 12.10, mysql 5.5

Я проверил множество ответов, связанных с моей проблемой, но ни одна из них не работает

наконец мне пришлось переустановить мой сервер mysql полностью, а затем я снова установил сервер Mysql

но вы должны знать, что вы должны удалить всю директорию, связанную с Mysql Я использую эту ссылку, чтобы полностью удалить mysql.

sudo apt-get remove --purge mysql-server mysql-client mysql-common
sudo apt-get autoremove
sudo apt-get autoclean
sudo deluser mysql
sudo rm -rf /var/lib/mysql
sudo rm -rf /etc/mysql
sudo rm -rf /var/lib/mysql
sudo rm -rf /var/run/mysqld

а затем снова установите LAMP на tasksel

Полное удаление MySQL 5.5

https://serverfault.com/questions/254629/unable-to-install-mysql-server-in-ubuntu/296928#296928

Ответ 16

Для тех, кто получает эту ошибку при работе с WAMP/XAMP на машине Windows.

Это может вам помочь.

Ваше решение -

  • net stop mysql
  • Стереть двоичные журналы (и файл индекса двоичного журнала)
  • ЕСЛИ вы не знаете, где они находятся, найдите my.ini на вашем ПК.
  • Откройте my.ini в "Блокноте", найдите лог файл опции или log_bin
  • Найдите параметр datadir
  • Если лог файл имеет только имя файла, загляните в папку, указанную в datadir
  • Если лог-корзина содержит путь и имя файла, загляните в папку, указанную в лог-папке
  • Откройте нужную папку в проводнике Windows
  • Удаление двоичных журналов. Должен быть файл, чей расширение файла .index. Удалите это, а также net start mysql

Пожалуйста, не удаляйте ib_logfile0 или ib_logfile1 при возникновении проблем с двоичным журналом.

Ответ на dba.stackexchange

Ответ 17

После многих попыток получения этого исправления выяснилось, что проблема заключалась в том, что пользователям Mysql не разрешалось входить в систему

netstat -na | grep -i 3306

Если он прослушивает все интерфейсы, вы можете назначить любой из ваших интерфейсов этому

$cfg['Servers'][$i]['host'] = 'ANY INTERFACE';

Попробуйте войти в систему, используя указанный выше IP-адрес, используя линию comand

mysql -u bla -p -h <Above_IP_address>

Если это работает, то ваш phpmyadmin также будет работать. Если не исправить таблицу mysql.user, чтобы эта команда работала и позволяет вам войти в mysql.

Ответ 18

Щелкните правой кнопкой мыши Мой компьютер → Управление → Службы Выберите "Услуги" в разделе "Услуги и приложения" на правой панели Затем выполните поиск службы "mysql". Когда вы его найдете, дважды щелкните, чтобы запустить эту службу.

Теперь вы можете запустить и войти в PhpMyAdmin

Ответ 19

Проверьте, работает ли сервер или нет.

Ответ 20

На всякий случай у кого-то больше проблем, это довольно уверенное решение.

проверьте свой файл etc/hosts, убедитесь, что у вас есть пользователь root для каждого хоста.

то есть.

127.0.0.1   home.dev

localhost   home.dev

Поэтому у меня будет 2 или более пользователей как root для mysql:

[email protected]
[email protected]

вот как я исправил свою проблему.

Ответ 21

У меня возникла проблема с пути службы MySQL в реестре Windows 7 который не был изменен с новым установленным XAMPP или новым easyPHP версия.

Итак, если у кого-то такая же проблема (ошибка # 2002, phpMyAdmin не может быть началось), вы можете выполнить поиск в win regedit для 'my.ini' и обменять путь к новому пакету.

Например, я обменял несколько мест на более старый путь:

C:\EASYPH ~ 1.1VC\бинарники\MySQL\Bin\ред-mysqld.exe --defaults-file = C:\EASYPH ~ 1.1VC\binaries\mysql\my.ini MySQL

с более новым:

c:\xampp\mysql\bin\mysqld.exe --defaults-file = c:\xampp\mysql\bin\my.ini MySQL

Странно, что никто не описывал эту проблему раньше в Интернете!

Ответ 22

Это потому, что ваша система имеет две установки пакетов "mysql". Одна установка была выполнена с помощью xampp/lampp, а другая - с помощью пакета mysql-debain. Чтобы решить проблему, просто перейдите в "синаптический менеджер" и удалите mysql, а затем вы сможете получить доступ к mysql с сервера xampp.

Примечание: удаление mysql из синаптического менеджера не влияет на mysql, который был установлен через сервер xampp/lampp. Так что не волнуйся!

Ответ 23

Для меня проблема была решена с помощью удаления файла .pid по имени моего компьютера:

sudo rm /var/mysql/computername.pid

Ответ 24

Это следующая строка в файле php.ini

mysql.default_socket = "MySQL"

к

mysql.default_socket = /var/run/mysqld/mysqld.sock

Ответ 25

Эта проблема возникает, когда вы уже установили MySQL на своем компьютере или , если вы изменили номер сообщения службы MySql, который составляет 3306 (по умолчанию).. Чтобы решить эту проблему, чтобы сообщить phpMyAdmin искать другой порт вместо 3306. Для этого перейдите в C:\xampp\phpMyAdmin (местоположение по умолчанию) и откройте Config.inc и добавьте эту строку $cfg['Servers'][$i]['port'] = '3307'; после $cfg['Servers'][$i]['AllowNoPassword'] = true; Перезапустите службы, и теперь это должно сработать.