Mysqld.sock nie istnieje

13

Mam serwer MySQL działający na Amazon EC2 w instancji VPC. Musiałem zmienić typ instancji, aby obsługiwał obciążenie, a kiedy ją przywróciłem, gniazdo już nie istniało. Plik /var/run/mysqld/mysqld.sock nie istnieje, podobnie jak katalog.

Nie mam pojęcia, gdzie to poszło, ale po prostu zniknęło. Czy istnieje sposób, aby to naprawić? Jeśli tak to jak? Na serwerze działa Ubuntu 10.04.

Dave Long
źródło

Odpowiedzi:

14

Potwierdź, że mysqld.sock nie istnieje

sudo find / -type s | grep mysqld.sock

Sprawdź, czy /etc/mysql/my.cnfplik zgadza się, że powinien to być plik / var / run / mysqld

socket  = /var/run/mysqld/mysqld.sock

a jeśli tak, to wtedy

sudo mkdir -p /var/run/mysqld
sudo chown mysql /var/run/mysqld/
sudo service mysql restart

ale podejrzewam, że twój problem leży gdzie indziej, ponieważ skrypt startowy mysql utworzy katalog, jeśli nie istnieje. Czy w dziennikach mysql jest jakaś odpowiednia wiadomość?

to po angielsku
źródło
Wydawało się, że wszystko to naprawiło. Myślę, że problem polegał na tym, że korzystałem z mysqld i /etc/init.d/mysql start, aby uruchomić serwer, ale nigdy nie próbowałem metody usługi. To był jedyny, który utworzyłby katalog i gniazdo.
Dave Long,
1
dziwnie, dostaję to za każdym razem, gdy wchodzę na mój serwer. i za każdym razem muszę zastosować to rozwiązanie, aby to naprawić. byłoby świetnie, gdyby były jakieś stałe poprawki.
Hermann Ingjaldsson
Wystąpił błąd typu „błąd: znaleziono opcję bez poprzedzającej grupy w pliku konfiguracyjnym: /etc/mysql/my.cnf w linii: 24 Błąd krytyczny w obsłudze ustawień domyślnych. Program przerwany”
Blairg23
Dzięki .. Mam ten sam problem, edytowałem plik /etc/mysql/my.cnf i dodałem gniazdo = /var/run/mysqld/mysqld.sock, serwer mysql zaczął działać po ponownej instalacji.
Bhagvat Lande