Mysql funktioniert nach der Neuinstallation von Apache2 nicht?

Mysql funktioniert nach der Neuinstallation von Apache2 nicht?

Früher hatte ich ein Problem mit .htacess-Dateien, das ich behoben habe. Dabei dachte ich jedoch, es wäre gut, Apache2 neu zu installieren. Dadurch wurden alle Webserverprobleme behoben, aber als ich versuchte, MySQL zu verwenden, erhielt ich diesen Fehler:

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

Bitte helfen Sie :O. Ich bin damit einverstanden, alle Datenbanken neu zu erstellen, aber ich bekomme MySQL nicht zum Laufen. Daher kann ich mit meinem Server im Grunde nichts anfangen, bis das Problem behoben ist.

Dank im Voraus :)

Antwort1

Wenn ich dieses Problem habe, mache ich drei Dinge:

  1. Überprüfen Sie, ob der MySQL-Prozess ausgeführt wird. Ein ps -esollte genügen. Bei mir hat ein nicht funktioniert service mysql stop. Ich musste manuell nachmachen killall mysql.

  2. Überprüft, ob my.cnf richtig auf die Stelle verweist, an der die Socket-Datei sein sollte. Es kommt manchmal vor, dass Sie in einer Konfiguration /var/run haben..., aber dann steht in der Konfigurationsdatei etwas anderes. Dasselbe gilt für den Ort, an dem die Datei my.conf sein sollte. Standardmäßig sehen Sie sie in /etc/mysql/my.cnf, aber in anderen Fällen könnte sie in /etc/my.cnf sein (und der Ordner /etc/mysql sollte nicht da sein, um Verwirrung mit 2 MySQL-Konfigurationsquellen zu vermeiden).

  3. Stellen Sie zuletzt sicher, dass das Verzeichnis, in dem sich die Socket-Datei befindet, über die richtigen Berechtigungen verfügt.

Meistens reicht 1. Das passiert zumindest mir, wenn ich eine Konfiguration durchführe und MySQL versehentlich mit einer falschen Konfiguration neu lade.

Antwort2

Der Fehler (2002) Verbindung zu ... kann nicht hergestellt werden bedeutet normalerweise, dass auf dem System kein MySQL-Server läuft. Versuchen Sie einen Neustart.

~$ sudo service mysql restart
mysql start/running, process 3912

oder stoppen und dann starten

:~$ sudo service mysql stop
mysql stop/waiting

~$ sudo service mysql start
mysql start/running, process 3994

Sie sollten außerdem überprüfen, dass der von Ihnen verwendete TCP/IP-Port nicht durch eine Firewall oder einen Portblockierungsdienst blockiert wurde.mehr dazu hier.

Überprüfen Sie, ob der Server auf diesem Host läuft, indem Sie ausführen sudo telnet some_host 3306und die Eingabetaste ein paar Mal drücken. (3306 ist die Standard-MySQL-Portnummer. Ändern Sie den Wert, wenn Ihr Server einen anderen Port abhört.) Wenn ein MySQL-Server läuft und den Port abhört,Sie sollten eine Antwort erhalten, die die Versionsnummer des Servers enthältWenn Sie einen Fehler wie erhalten telnet: Unable to connect to remote host: Connection refused, dannAuf dem angegebenen Port läuft kein Server..

meins zum Beispiel (auf Spanisch):

~$ sudo netstat -a | grep mysql
tcp        0      0 localhost:mysql         *:*                     ESCUCHAR   
unix  2      [ ACC ]     FLUJO      ESCUCHANDO    18740    /var/run/mysqld/mysqd.sock

MEINS FUNKTIONIERT: ABER SEHEN WIR ES, INDEM WIR UNS ÜBER TELNET MIT MEINEM LOCALHOST VERBINDEN. =D

~$ sudo telnet localhost 3306
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
E
5.1.61-0ubuntu0.11.10.1"]+Ya]-gQO{<X)_&<:NXConnection closed by foreign host.
marcelo@acer:~$ 

Schau dir das an:http://ubuntuforums.org/showthread.php?t=804021

verwandte Informationen