Python无法通过套接字连接到本地MySQL服务器

Python无法通过套接字连接到本地MySQL服务器

我有一个 python 脚本,用于将内容添加到 MYSQL 数据库。我收到的错误如下:

Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock

我已经检查了设置中数据库的凭据并且它们是正确的,并且我可以通过 Sequel 连接到数据库。

我安装了以下软件包:

apt-get -y install build-essential python-dev libxml2-dev libxslt1-dev python-pip libmysqlclient-dev
pip install -U MySQL-python

我不太清楚该如何诊断。它是否在正确的位置寻找 mysqld.sock,但它不在那里,或者它应该在其他位置寻找它。

任何帮助或建议都将不胜感激,这样我才能继续前进。

答案1

A.如果mysql在同一台服务器上运行,找到套接字文件并将其指定给应用程序:

lsof|grep mysql.sock

或者使用 IP 而不是主机名连接到服务器(主机名“localhost”恢复为默认套接字连接,而不是 TCP,默认为 /var/lib/mysql/mysql.sock)

B. 如果 mysql 在其他服务器上运行 - 连接参数没有正确传递给您的脚本,请检查它必须如何运行。

此外,一些脚本可能会[client]读取~/.my.cnf

相关内容