Die MySQL-Clientbibliothek versucht zu erraten, wie eine Verbindung zu Ihrer Datenbank hergestellt wird. Wenn Sie localhost
angeben als Hostname wird davon ausgegangen, dass Sie einen lokalen Socket verwenden (suchen Sie Ihren Computer nach einer Datei namens mysql.sock
, wahrscheinlich unter /var/lib/mysql
oder /usr/local/mysql/
.
Wenn Sie jedoch alles verwenden B. eine IP-Adresse, einen anderen Hostnamen oder in Ihrem Fall mysqldev
, versucht es, sich über TCP mit dem Host zu verbinden. Aus der Fehlermeldung geht hervor, dass Ihr lokaler MySQL-Server den TCP-Port 3306 (den MySQL-Standard) nicht abhört
Prüfen Sie, ob Ihre my.cnf (wahrscheinlich /etc/my.cnf
oder /etc/mysql/my.cnf
) erlaubt die Verwendung von tcp. Wenn Sie eine Zeile wie
skip-networking
auskommentieren:
#skip-networking
und starten Sie den Server neu. Versuchen Sie dann erneut, eine Verbindung herzustellen.
Um herauszufinden, wo sich Ihr Socket befindet, verbinden Sie sich über localhost und geben Sie den folgenden Befehl ein:
mysql> show global variables like '%socket%';
+---------------+-----------------------------+
| Variable_name | Value |
+---------------+-----------------------------+
| socket | /var/run/mysqld/mysqld.sock |
+---------------+-----------------------------+