在使用 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 失败 [重复]的主要内容,如果未能解决你的问题,请参考以下文章

如何用python实现对数据库的整理

Centos 6.6,python 2.7.2 对象没有属性'StringIO

PySide for Python 2.7.2 ImportError DLL 加载在 Win32 上失败

MySQL——MySQL备份

python 数学操作符

在 Suse Linux Server 11.3 上安装 Python 2.7.2 找不到 tkinter 依赖项