在使用 Python 2.7.2 和 MySQL 的 OS X 10.8.2(Mountain Lion)上导入 MySQLdb 失败 [重复]
Posted
技术标签:
【中文标题】在使用 Python 2.7.2 和 MySQL 的 OS X 10.8.2(Mountain Lion)上导入 MySQLdb 失败 [重复]【英文标题】:import MySQLdb fails on OS X 10.8.2 (Mountain Lion) with Python 2.7.2 and MySQL [duplicate] 【发布时间】:2013-01-10 04:03:07 【问题描述】:可能重复:How to install mysqldb (Python data access library to MySQL) on Mac OS X?
虽然在here 之前已经提出过这个问题,但发布的问题和后续答案与 OS X(Snow Leopard)相关,与 OS X Lion 和 OS X Mountain Lion 无关。在 OS X Lion 和 OS X Mountain Lion 中提供了 Python 和 MySQL 补丁,这些补丁会影响在 Mac OS X 10.7 (Lion) 和 Mac OS X 10.8 (Mountain Lion) 上顺利安装 Python-MySQLdb-connector 的过程。这是重复这个问题的唯一原因。如果您运行的是旧版本的 OS X,请随时参考旧问题。
我正在运行 OS X 10.8.2 (Mountain Lion) 并安装了 python 2.7.2 -
==> python
Python 2.7.2 (default, Jun 20 2012, 16:23:33)
[GCC 4.2.1 Compatible Apple Clang 4.0 (tags/Apple/clang-418.0.60)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
但是当我在 python 上运行 import MySQLdb 时,它会失败并显示以下消息 -
==> python
Python 2.7.2 (default, Jun 20 2012, 16:23:33)
[GCC 4.2.1 Compatible Apple Clang 4.0 (tags/Apple/clang-418.0.60)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import MySQLdb
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: No module named MySQLdb
任何意见都会有所帮助。
【问题讨论】:
【参考方案1】:我通过以下步骤解决了上述问题:
以下步骤适用于 Mountain Lion (OS X 10.8.2) -
安装 MySQL-python 包
下载最新的 MySQL(64 位,tar 存档)here
提取焦油内容 将文件夹重命名为“mysql” 将文件夹复制到 /usr/local/ 您现在应该在 /usr/local/mysql 上安装了 mysql下载最新的MySQL-python包here
在终端上输入:
tar -xvzf MySQL-python-1.2.3.tar.gz cd MySQL-python-1.2.3
在您喜欢的文本编辑器上编辑 site.cfg 并更改 mysql 路径如下:mysql_config = /usr/local/mysql/bin/mysql_config
您现在已准备好构建和安装 MySQL-python:
sudo python setup.py build sudo python setup.py 安装
编辑您的 ~/.bash_profile,添加以下行:
导出 DYLD_LIBRARY_PATH=/usr/local/mysql/lib/
如果您已经在使用 MAMP,您仍然必须遵循上述 MySQL 安装过程,因为默认情况下 MAMP 不包含构建 MySQL-python 所需的头文件。 此外,如果您更喜欢 MAMP,则不必从 /usr/local/mysql 运行 mysql。 在您的 settings.py 中,请记住将“127.0.0.1”设置为您的首选数据库主机,以防“localhost”不起作用。
测试 MySQL-python 安装
重启终端并输入:
蟒蛇 导入 MySQL 数据库
我注意到的另一件事是它有助于在安装 mysql 后重新启动 mac。
以下链接上发布的步骤适用于 OS X 10.6.8 -
How to install MySQLdb (Python data access library to MySQL) on Mac OS X?
【讨论】:
【参考方案2】:来自官方 mysql(Oracle) 的mysql-connector-python 是 python 2.x 和 3.x 的不错选择。
它是一个没有mysql客户端的纯python库。
【讨论】:
以上是关于在使用 Python 2.7.2 和 MySQL 的 OS X 10.8.2(Mountain Lion)上导入 MySQLdb 失败 [重复]的主要内容,如果未能解决你的问题,请参考以下文章
Centos 6.6,python 2.7.2 对象没有属性'StringIO