Клиентската библиотека на MySQL се опитва да отгатне как да се свърже с вашата база данни. Когато дадете localhost
като име на хост се предполага, че използвате локален сокет (потърсете в компютъра си файл с име mysql.sock
, вероятно под /var/lib/mysql
или /usr/local/mysql/
.
Въпреки това, когато използвате всичко иначе, като IP адрес, различно име на хост или, във вашия случай, mysqldev
, той се опитва да се свърже с хоста чрез tcp. От съобщението за грешка изглежда, че вашият локален mysql сървър не слуша tcp порт 3306 (по подразбиране на mysql)
Проверете дали вашият my.cnf (вероятно /etc/my.cnf
или /etc/mysql/my.cnf
) позволява използването на tcp. Ако намерите ред като
skip-networking
коментирайте го:
#skip-networking
и рестартирайте сървъра. След това опитайте отново да се свържете.
За да разберете къде е вашият сокет, свържете се през localhost и издайте следната команда:
mysql> show global variables like '%socket%';
+---------------+-----------------------------+
| Variable_name | Value |
+---------------+-----------------------------+
| socket | /var/run/mysqld/mysqld.sock |
+---------------+-----------------------------+