Ответ 1
Моя проблема была решена, проверяя, был ли процесс запущен на Ubuntu 12.04
ps ax | grep mysql
Тогда ответ был тот, что он не работал, поэтому я сделал
sudo service mysql start
Или попробуйте
sudo /etc/init.d/mysql start
Я получаю эту ошибку
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysql.sock' (2)
хотя мне удалось запустить mysql через командную строку в ubuntu
mysql stop/waiting
mysql start/running, process 17691
Однако при попытке получить доступ к сайту я получаю ошибку подключения к базе данных, а также указанную выше ошибку при попытке получить доступ к mysql через mysql -u root -p
Я проверил свои журналы ошибок, и я увидел это
131029 12:53:34 [Warning] Using unique option prefix myisam-recover instead of myisam-recover-options is deprecated and will be remo$
131029 12:53:34 [Note] Plugin 'FEDERATED' is disabled.
131029 12:53:34 InnoDB: The InnoDB memory heap is disabled
131029 12:53:34 InnoDB: Mutexes and rw_locks use GCC atomic builtins
131029 12:53:34 InnoDB: Compressed tables use zlib 1.2.3.4
131029 12:53:34 InnoDB: Initializing buffer pool, size = 26.0G
131029 12:53:36 InnoDB: Completed initialization of buffer pool
131029 12:53:36 InnoDB: highest supported file format is Barracuda.
131029 12:53:38 InnoDB: Waiting for the background threads to start
131029 12:53:39 InnoDB: 5.5.34 started; log sequence number 5146431500
131029 12:53:39 [Note] Server hostname (bind-address): '0.0.0.0'; port: 3306
131029 12:53:39 [Note] - '0.0.0.0' resolves to '0.0.0.0';
131029 12:53:39 [Note] Server socket created on IP: '0.0.0.0'.
131029 12:53:39 [Note] Event Scheduler: Loaded 0 events
131029 12:53:39 [Note] /usr/sbin/mysqld: ready for connections.
Version: '5.5.34-0ubuntu0.12.04.1-log' socket: '/var/run/mysqld/mysqld.sock' port: 3306 (Ubuntu)
Это первый раз, когда я вижу эту ошибку, и я не уверен, как решить эту проблему, пожалуйста, помогите мне немного здесь.
Спасибо
UPDATE
Хорошо, я попробовал решение glglgl, и после перезагрузки я получаю следующее в журнале ошибок:
131029 13:17:36 [Warning] Using unique option prefix myisam-recover instead of myisam-recover-options is deprecated and will be remo$
131029 13:17:36 [Note] Plugin 'FEDERATED' is disabled.
131029 13:17:36 InnoDB: The InnoDB memory heap is disabled
131029 13:17:36 InnoDB: Mutexes and rw_locks use GCC atomic builtins
131029 13:17:36 InnoDB: Compressed tables use zlib 1.2.3.4
131029 13:17:36 InnoDB: Initializing buffer pool, size = 26.0G
131029 13:17:38 InnoDB: Completed initialization of buffer pool
131029 13:17:38 InnoDB: highest supported file format is Barracuda.
131029 13:17:40 InnoDB: Waiting for the background threads to start
131029 13:17:41 InnoDB: 5.5.34 started; log sequence number 5146431500
131029 13:17:41 [Note] Server hostname (bind-address): '127.0.0.1'; port: 3306
131029 13:17:41 [Note] - '127.0.0.1' resolves to '127.0.0.1';
131029 13:17:41 [Note] Server socket created on IP: '127.0.0.1'.
131029 13:17:41 [Note] Event Scheduler: Loaded 0 events
131029 13:17:41 [Note] /usr/sbin/mysqld: ready for connections.
Version: '5.5.34-0ubuntu0.12.04.1-log' socket: '/var/run/mysqld/mysqld.sock' port: 3306 (Ubuntu)
Моя проблема была решена, проверяя, был ли процесс запущен на Ubuntu 12.04
ps ax | grep mysql
Тогда ответ был тот, что он не работал, поэтому я сделал
sudo service mysql start
Или попробуйте
sudo /etc/init.d/mysql start
Во-первых, убедитесь, что установлен mysql-сервер. У меня такая же ошибка, когда mysql-сервер установлен, но поврежден каким-то образом. Я делаю трюк, удалив mysql полностью и переустановил его.
sudo apt-get remove --purge mysql*
sudo apt-get autoremove
sudo apt-get autoclean
sudo apt-get install mysql-server mysql-client
У меня была такая же проблема, когда я установил xampp в свою систему. Сервер mysql ищет /var/run/mysqld/mysqld.sock, но файл mysql.sock находится в папке xampp, поэтому я использовал
find / -name '*.sock'
чтобы найти файл mysql.sock, а затем использовать
ln -s <the file location> /var/run/mysqld/mysqld.sock
чтобы получить ссылку для файла *.sock, затем попытался mysql, и он работал без ошибок. Надеюсь, это может решить вашу проблему.
Не забудьте создать каталог, если он не существует.
Клиент должен быть настроен в соответствии с настройками сервера.
[client]
port = 3306
socket = /var/run/mysqld/mysqld.sock
[mysqld]
user = mysql
pid-file = /var/run/mysqld/mysqld.pid
socket = /var/run/mysqld/mysqld.sock
port = 3306
Это заняло у меня время, чтобы понять, но вы могли бы попробовать то же самое -
1 - Обновление и обновление
sudo apt-get update
sudo apt-get upgrade
2 - Очистите сервер MySQL и клиент (если установлен).
sudo apt-get purge mysql-server mysql-client
3 - Установите MySQL Server и Client в новый
sudo apt-get install mysql-server mysql-client
4 - Тест MySQL
mysql -u root -p
> enter root password
*** должен получить сокет не найден в /var/run/mysqld/mysql.sock
4 - Настроить mysqld.cnf с помощью nano vi
sudo nano/etc/mysql/mysql.conf.d/mysqld.cnf
Изменить адрес связывания с 127.0.0.1 на localhost
bind-address = localhost
** Запись и выход
5 - Перезапустить MySQL
sudo /etc/init.d/mysql restart
6 - проверить mysql
mysql -u root -p
> enter root password
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 4
Server version: 5.7.13-0ubuntu0.16.04.2 (Ubuntu)
Copyright (c) 2000, 2016, 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>
Теперь вы должны войти в mysql cli.
Надеюсь, что это поможет
Code.Ph0y
Недавно я столкнулся с этой ошибкой в моей mysql
ERROR 2002 (HY000)
:
Невозможно подключиться к локальному серверу MySQL через сокет
'/var/lib/mysql/mysql.sock' (111)
потому что я забываю начать свой мариад. просто введите эту команду на ур терминал.
systemctl start mariadb.service
Это старый протектор с предлагаемым разным решением, но никто из них не работал у меня. Я добавляю этот ответ в надежде, что он поможет кому-то, кто некоторое время боролся за меня.
Я проверил все существующие ответы и все существующие решения, но для меня проблема была неправильным пользовательским разрешением в папке var/run/mysql
.
Я проверил права пользователя на эту папку и был установлен в root
. Когда я изменился на mysql:mysql
, проблема исчезла.
Итак, введите /var/run/mysqld
и измените права пользователя на:
chown -R mysql:mysql .
У меня была такая же проблема после изменения my.cnf. Я решил эту проблему следующие шаги.
Сначала: чтобы найти местоположение error.log, посмотрите на "my.conf".
Во-вторых: я искал error.log, я нашел следующие сеансы массажа,
"неизвестная переменная" по умолчанию -...... ' "....." mysqld_safe Запуск mysqld darmon с /var/lib/mysql "
В-третьих: я reset my.conf по умолчанию, а затем перезапустите, эта проблема была решена.
Надеюсь, это поможет.
Я следую за Веллингтон Лориндо. И моя проблема была решена.
Действия 1. запустить в терминале
ps ax | grep mysql
Результат был
11200? Ssl 0:01/usr/sbin/mysqld
11514 pts/0 S + 0:00 grep mysql
Действия 2. Снова наберите это
sudo service mysql start
И проблема решена.
Спасибо Веллингтон Лориндо
Возможно, вам не хватает mysql-сервера. установите его с помощью
sudo apt-get install mysql-server
Такая же ошибка произошла и с моей системой. Мне пришлось удалить mysql-сервер и переустановить его. Не так. Попробуйте запустить эти команды:
это сработало для меня
sudo /etc/init.d/mysql start
сначала я попробовал это, но я не понимаю, почему он не работает таким образом.
sudo service mysql start
В Debian для меня была проблема с привязкой, поэтому мне удалось изменить bind-address
от localhost
до 0.0.0.0.
vim /etc/mysql/my.cnf
bind-address = 0.0.0.0
Я удалил все, что связано с MySQL с
sudo apt-get удалить --purge --auto -r emove mysql-client-5.7 mysql-client-core-5.7 mysql-common mysql-server-5.7
sudo rm -r/etc/mysql */var/lib/mysql */var/log/mysql *
а затем переустановил его снова с
sudo apt-get update
sudo apt-get установить mysql-сервер
а потом начал с
mysql -u root -p
затем пароль
Я также встретил эту проблему.
mysql -u root -p
Введите пароль:
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (111)
Затем я нахожу, что причина в том, что мой selinux
принудительно, я отключил его, а затем перезапустил mysqld
, он работает, надеюсь, полезно.
Есть еще один шанс получить эту конкретную ошибку, если вы измените файл max_connections
в my.cnf
.
Я также столкнулся с той же ошибкой, которая не позволила мне войти в сервер MySQL. В моем случае проблема заключалась в том, что мне пришлось увеличить размер max_connections
в
/etc/mysql/my.cnf
к
set-variable = max_connections = 5000
Из-за этой причины на следующий день, когда я смотрел сервер MySQL, эта ошибка была сброшена
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)
Удаление сегмента set-variable = max_connections = 5000
из файла my.conf
сделало трюк. После удаления этого сегмента после использования команды. Сервер MySQL запущен и работает, как раньше.
sudo /etc/init.d/mysql start
У меня была проблема.
Этот процесс работал для меня:
Убедитесь, что во время процесса удаления вы выбираете Нет для удаления базы данных.
sudo apt-get remove --purge mysql*
sudo apt-get autoremove
sudo apt-get autoclean
sudo apt-get install mysql-server mysql-client
В терминале linux я запускаю следующие шаги, и они помогли мне
1. Прежде всего список всех пакетов mysql, установленных
sudo dpkg -l | grep mysql
2.Удалить перечисленные пакеты с помощью указанной команды
sudo apt-get --purge autoremove
3.Reinstall mysql server
sudo apt-get install mysql-server
Это сработало для меня, Надеюсь, это сработает и для вас.
Альтернативно Try
sudo apt-get remove --purge mysql - *
затем переустановить с помощью
sudo apt-get install mysql-server mysql-client
Вам не нужно переустанавливать сервер MySQL. Я столкнулся с той же проблемой, но я решил проблему, выполнив эти команды.
1 ps -A|grep mysql
2 sudo pkill mysql
3 ps -A|grep mysqld
4 sudo pkill mysqld
5 sudo service mysql restart
6 mysql -u root -p
Если вы посмотрите внимательно, вы увидите разницу:
/var/run/mysqld/mysqld.sock
/var/run/mysqld/mysql.sock
Вам нужно будет настроить тот или иной.
Две основные причины:
1) mysql-server не установлен! Вы должны установить его (mysql-server, а не mysql-client) и запустить его.
2) Он установлен по умолчанию и работает. Таким образом, невозможно запустить его снова через Xampp или Lampp. Вы должны остановить это: sudo service mysql stop
то вы можете запустить его через Xampp. Можно проверить, работает ли он с этим кодом: sudo netstat -tap | grep mysql
Если вы видите такой результат: tcp 0 0 localhost: mysql: LISTEN 1043/mysqld
Это означает, что он работает правильно.
убедитесь, что параметр конфигурации адреса привязки в файле my.cnf в файле/etc/совпадает с адресом localhost или виртуальным IP-адресом. плюс проверка, чтобы убедиться, что каталог для создания файла сокета хорошо указан.
Это альтернативное решение, если проблема связана с вами. Если ваш дисковод заполнен, то сервер MYSQL (и большинство других программ) не может быть запущен. Удалите файлы и папки, чтобы запустить Mysql-сервер.
Простой: выполните следующие коды:
1:: ls -lart/var/run/my*
2::mkdir /var/run/mysqld
3::touch /var/run/mysqld/mysqld.sock
4:ls -lart /var/run/mysqld
5::chown -R mysql /var/run/mysqld
6::ls -lart /var/run/mysqld
REstart your mysql server
затем завершите тип mysql -u root или mysql -u root -p и нажмите клавишу ввода. спасибо
В моем случае проблема заключалась в том, что я добавил "default-character-set = utf8" в my.cnf, и это искажало файл. Вместо этого измените эту строку для "character_set_server = utf8". Это должно решить его, надеюсь, что это поможет.
Обратите внимание, что я столкнулся с этой проблемой после обновления моего дистрибутива Ubuntu 14.04 с помощью apt-get upgrade
. Мне пришлось полностью очистить mysql-server
и mysql-client
и переустановить его, чтобы исправить эту проблему.
sudo apt-get autoremove
sudo apt-get autoclean
sudo apt-get purge mysql-server mysql-client
sudo apt-get install mysql-server mysql-client
Надеюсь, что это поможет.
Эта проблема возникнет из-за некоторых ненужных изменений, внесенных в файл my.cnf.
Попытайтесь выполнить diff /etc/mysql/my.cnf
с помощью одного из файлов my.cnf для серверов mysql.
Я только что заменил файл /etc/mysql/my.cnf
новым файлом my.cnf, и это работает для меня.
Я тоже застрял в этой ошибке, и для ее поиска потребовалось почти 3 часа.
Прежде всего, попробуйте вспомнить изменения, внесенные вами в файл conf, затем отмените изменения и сохраните файл и запустите mysql. Если вы хотите внести какие-либо изменения в файл conf, остановите сервер mysql, а затем измените нужные значения и перезапустите mysql.
Эта ошибка возникает из-за неверного (неверного ключевого слова или неправильного значения) изменения, внесенного в файл conf. В большинстве случаев эта ошибка возникает, даже если вы перезапускаете машину, на которой запущен сервер, так как сервер остановлен, в этом случае запустите сервер mysql.
У меня такая же проблема, и я попробовал все решения, размещенные здесь, как:
sudo apt-get autoremove mysql-server
но, к сожалению, это не работает для меня на ubuntu 16.04. Чтобы удалить нужный пакет, вам необходимо:
sudo apt-get remove mysql-
при попытке автозаполнения с помощью tab
команды он перечислит следующий пакет:
mysql-client mysql-client-core-5.7 mysql-server mysql-server-core-5.7 mysql-workbench mythes-en-us
mysql-client-5.7 mysql-common mysql-server-5.7 mysql-utilities mysql-workbench-data
очевидно, выберите mysql-server-core-5.7
, чтобы он был:
sudo apt-get remove mysql-server-core-5.7
и теперь вы можете удалить все mysql и снова установить с помощью этой команды из johnny answer:
sudo apt-get remove --purge mysql*
sudo apt-get autoremove
sudo apt-get autoclean
sudo apt-get install mysql-server mysql-client
Теперь я решил это, и ошибка GONE.
Как только вы установите или обновите MySQL, он не попросит вас создать пароль root. В этом случае: у вас будет файл с именем пути debian.cnf: /etc/mysql. Вы найдете имя пользователя и пароль, войдите с этими учетными данными и создадите нового пользователя и пароль.