Коли я намагався підключитися до локального сервера MySQL під час мого тестового набору, він не вдається з помилкою:
OperationalError: (2002, "Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)")
Однак я можу в будь-який час підключатися до MySQL, запускаючи програму командного рядка
mysql
. A ps aux | grep mysql
показує, що сервер працює, і
stat /tmp/mysql.sock
підтверджує наявність сокета. Крім того, якщо я відкрию налагоджувач у except
пункті цього винятку, я можу надійно з'єднатися з точно такими ж параметрами.
Ця проблема відтворюється досить надійно, проте, схоже, це не на 100%, тому що кожен раз, коли я потрапив у синій місяць, насправді мій тестовий набір працює, не потрапляючи на цю помилку. Коли я намагався бігти з sudo dtruss
цим, він не відтворювався.
Весь код клієнта знаходиться в Python, хоча я не можу зрозуміти, наскільки це було б актуально.
Перехід на використання хосту 127.0.0.1
видає помилку:
DatabaseError: Can't connect to MySQL server on '127.0.0.1' (61)
mysql -h 127.0.0.1
роботу з командного рядка? Я не дуже впевнений, що ваш сервер mysql насправді слухає на порту TCP.
mysql -h localhost
надійно працює?
max_connections
у своєму файлі конфіденційність MySQL?