ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysqld/mysqld.sock' (2)

Проблема при старте демона (служба, сервис) MySQL или при попытке подключения к нему. Ошибка означает что не может подключиться к Unix-сокету.

mysql -uroot -p
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysqld/mysqld.sock' (2)

Решение простое.

1. Проверяем наличие сокета

ls -l /var/lib/mysqld/
prw-r--r--. 1 mysql mysql 0 Ноя 11 10:43 mysqld.sock

2. если он есть, проверяем кто его занял.

sudo # lsof /var/lib/mysqld/mysqld.sock
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
mysqld 17950 mysql 12u unix 0xffff8802533dc380 0t0 104263092 /var/lib/mysqld/mysqld.sock

Решаем вопрос с захватившим процесс сокета. Убить процесс.

2. если его нет, создаем сокет и выставляем владельца

sudo mkfifo /var/lib/mysqld/mysqld.sock
sudo chown -R mysql:mysql /var/lib/mysqld

на этом MySQL должен работать и пускать.