phpMyAdmin выбрасывает # 2002 не может войти на сервер MySQL phpmyadmin - PullRequest
40 голосов
/ 12 сентября 2010

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

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

Так что теперь, когда я пытаюсь войти в систему, я получаю сообщение об ошибке «# 2002 не может войти на сервер MySQL phpmyadmin»

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

Ответы [ 27 ]

1 голос
/ 14 февраля 2017

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

Это предполагает, что вы хотите, чтобы phpMyAdmin подключался локально к MySQL с помощью сокета UNIX, а не TCP / IP.

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

Служба

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

MySQL Config (my.cnf)

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

PHP Config (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*';

NB

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

Настройка MySQL bind-address=также влияет только на соединения TCP / IP.

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

1 голос
/ 22 июня 2016

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

1 голос
/ 30 января 2014

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

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

Эта проблема была немедленно исправлена ​​после перезапуска сервера, однако это не на будущее.

0 голосов
/ 07 февраля 2016

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

sudo rm /var/mysql/computername.pid
0 голосов
/ 03 июля 2015

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

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

0 голосов
/ 11 марта 2013

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

0 голосов
/ 09 февраля 2015

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

Так что, если у кого-то есть такая же проблема (ошибка 2002, phpMyAdmin не может быть запущен) вы можете найти в win regedit файл my.ini и обменять путь к новому пакету.

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

C: \ EASYPH ~ 1.1VC \ binaries \ mysql \ bin \ eds-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

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

0 голосов
/ 31 августа 2018

моя проблема решается этим шагом

  1. apt-get install mysql-server phpmy admin
  2. / etc / init.d / mysql restart
  3. сделано.
0 голосов
/ 05 мая 2014

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

netstat -na | grep -i 3306

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

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

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

mysql -u bla -p -h <Above_IP_address>

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

0 голосов
/ 17 февраля 2014

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

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

Ваше решение для

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

Пожалуйста, НЕ УДАЛЯЙТЕ ib_logfile0 или ib_logfile1, если у вас есть проблемы с двоичным журналом.

Ответ на dba.stackexchange

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...