首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Cygwin上的MySQLdb

问Cygwin上的MySQLdb
EN

Stack Overflow用户
提问于 2014-05-29 10:41:19
回答 2查看 290关注 0票数 0

在Cygwin和Python上使用MySQLdb,我得到以下错误。我不想在Cygwin上安装MySQLDB。是否有一种方法可以使用MySQL的windows版本并连接到它。

代码语言:javascript
复制
Python 2.7.5 (default, Oct  2 2013, 22:34:09)
[GCC 4.8.1] on cygwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import MySQLdb
>>> db = MySQLdb.connect(host="localhost", user="root", passwd="root" )
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/lib/python2.7/site-packages/MySQLdb/__init__.py", line 81, in Connect
    return Connection(*args, **kwargs)
  File "/usr/lib/python2.7/site-packages/MySQLdb/connections.py", line 193, in __init__
    super(Connection, self).__init__(*args, **kwargs2)
_mysql_exceptions.OperationalError: (2002, "Can't connect to local MySQL server through socket      '/var/run/mysql.sock' (9)")

我创建了my.cnf文件如下所示

代码语言:javascript
复制
$ cat /etc/my.cnf
[client]
 host            = 127.0.0.1
 port            = 3306
 socket          = /var/run/mysql/mysql.sock

我还创建了mysql.sock文件如下所示。

代码语言:javascript
复制
$ pwd
/var/run/mysql

$ cat mysql.sock
[client]
port=3306
socket=/var/mysql/mysql.sock

[mysqld]
port=3306
socket=/var/mysql/mysql.sock
key_buffer_size=16M
max_allowed_packet=8M

我不知道还需要什么才能运行。有什么想法吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-05-30 19:58:53

MySQL服务器在启动时应该自动创建套接字,但它并不总是在MySQLdb所期望的文件夹中。您可以在/tmp/mysql.sock上找到它,它是--socket命令行参数的默认值。如果没有,可以使用下面的巴什命令搜索它

代码语言:javascript
复制
$ find / -name 'mysql.sock' 2>/dev/null

如果MySQLdb默认情况下在/var/lib/mysql/mysql.sock查找套接字,但您发现套接字位于其他地方,则可以对连接函数使用unix_socket参数,例如:

代码语言:javascript
复制
conn = MySQLdb.connect(user=myuser, passwd=mypass, unix_socket='/tmp/mysql.sock')

host和port参数是可选的,当您想通过unix连接时,通常可以忽略这两个参数,因为您想要默认的主机,而不是使用TCP端口。

票数 1
EN

Stack Overflow用户

发布于 2014-05-29 11:12:02

我还没有找到一个完整的解决方案,但是如果您使用"127.0.0.1“而不是"localhost”,它就会工作。还不清楚为什么,但是localhost可以使用cygwin的curl,而不是mysql或python。

更新:您不需要定义.cnf或.sock文件

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23931459

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档