gpt4 book ai didi

python - PyMySQL 无法连接到本地主机上的 MySQL

转载 作者:IT老高 更新时间:2023-10-28 21:53:58 30 4
gpt4 key购买 nike

我正在尝试使用 PyMySQL 连接到本地主机上的 MySQL:

import pymysql
conn = pymysql.connect(db='base', user='root', passwd='pwd', host='localhost')

但是(在 Python 2.7 和 Python 3.2 上)我得到了错误:

socket.error: [Errno 111] Connection refused

pymysql.err.OperationalError: (2003, "Can't connect to MySQL server on 'localhost' (111)")

我确定 mysqld 正在运行,因为我可以使用 mysql 命令或 phpMyAdmin 进行连接。此外,我可以使用几乎相同的代码在 Python 2 上使用 MySQLdb 进行连接:

import MySQLdb
conn = MySQLdb.connect(db='base', user='root', passwd='pwd', host='localhost')

似乎问题出在 PyMySQL 而不是 MySQL 方面,但我不知道如何解决。

最佳答案

两种猜测:

  1. 运行 mysqladmin 变量 | grep socket 获取套接字所在的位置,并尝试像这样设置连接:

    pymysql.connect(db='base', user='root', passwd='pwd', unix_socket="/tmp/mysql.sock")
  2. 运行 mysqladmin 变量 | grep port 并验证端口是3306。如果不是,您可以像这样手动设置端口:

    pymysql.connect(db='base', user='root', passwd='pwd', host='localhost', port=XXXX)

关于python - PyMySQL 无法连接到本地主机上的 MySQL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6885164/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com