无法使用python中的mysqldb连接到mysql,可以从命令行连接

eyh26e7m  于 2021-06-20  发布在  Mysql
关注(0)|答案(0)|浏览(225)

我在用python连接本地mysql数据库时遇到问题,但是从命令行连接时没有问题。
当我尝试这个:

db = MySQLdb.connect(host="localhost",
                     user="username",    
                     passwd="password",
                     db="dbname",
                     port=3306,
                     unix_socket="/var/run/mysqld/mysqld.sock")

我得到以下错误:

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

当我没有显式地传递套接字路径时,也会出现同样的错误。当我使用 127.0.0.1 而不是 localhost 作为主机(同时删除unix套接字参数):

OperationalError: (2003, "Can't connect to MySQL server on '127.0.0.1' (111)")

我知道mysql正在运行,因为当我可以从命令行连接到数据库时没有问题 mysql -u username -p dbname . 我也知道mysql正在监听 127.0.0.1 ,当我跑的时候 mysql -h 127.0.0.1 -p 我也能连接。我也肯定它在听左舷 3306 .

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题