1

我只是想在我的 Mac(运行Mac OS X 10.6.5 (Snow Leopard))上安装MySQL ,以便与 Python 一起使用。

到目前为止,我有:

  1. 下载并安装 [mysql-5.5.8-osx10.6-x86_64.dmg]。(我也无意中下载安装了[mysql-5.1.54-osx10.6-x86_64.dmg])

  2. 下载并安装[mySQL-python-1.2.3]

  3. 在我的 .bash_profile 中添加了以下内容:

    [export PATH=$PATH:/usr/local/mysql/bin]
    

但是当我运行时:import mySQLdb在终端中,我遇到了以下消息:

回溯(最近一次调用):
文件“<stdin>”,第 1 行,在 <module> 中
ImportError:没有名为 mySQLdb 的模块

我该如何解决这个问题?

更新:好的,所以我尝试了MacPorts安装,但它仍然无法正常工作。我收到以下错误消息...

错误:db46 需要 Java for Mac OS X 开发标头。
错误:从以下位置下载 Java 开发人员包:https

://connect.apple.com/cgi-bin/WebObjects/MemberSite.woa/wa/getSoftware?bundleID= 20719 错误:目标 org.macports.configure 返回:缺少 Java 标头

错误:无法安装 db46 db46
的日志位于:/opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_release_ports_databases_db46/main.log

错误:未安装以下依赖项:py26-distribute python26 db46 gdbm gettext expat libiconv gperf sqlite3

错误:处理过程中遇到状态 1。

这对我来说意义不大,尽管我猜倒数第二个解释了为什么 Python 不在它应有的位置。

4

3 回答 3

1

当然可以自己完成所有工作。但是有很多部分,尤其是在 OS X 10.6 和它偏爱在 64 位上运行的情况下,很难把所有东西都做好。我们可以调试沿途的每一步;为此,您将需要提供更多信息。或者,您可以帮自己一个忙,从 3rd 方包管理器安装所有内容,例如MacPortsFinkHomebrew. 如果您要安装更多软件包,那将更有意义。我碰巧更喜欢MacPorts. 如果您尚未安装其基本文件,请按照此处的说明进行操作。如果您已经安装了它,请执行此操作以确保端口列表是最新的:

$ sudo port selfupdate

然后,您可以使用一个命令安装所需的一切:

$ sudo port install py26-mysql

完成后:

$ /opt/local/bin/python2.6 -c "import MySQLdb; print(MySQLdb.version_info)"
(1, 2, 3, 'final', 0)

更新:根据您提供的其他信息,最近对 OS X 10.6 上的 Java 发行版的更改似乎导致依赖库之一 db46 失败。最简单的方法应该是添加一个命令来选择它的非 Java 变体:

$ sudo port clean db46
$ sudo port install db46 +no_java
$ sudo port install py26-mysql
于 2010-12-23T02:52:12.437 回答
0

这个

import MySQLdb

对我有用(情况不同)。否则,请确保正确安装了 egg(例如在 /Library/Python/2.6/site-packages/MySQL_python 中)

于 2010-12-22T23:45:05.397 回答
0

我很幸运使用 MAMP 而不是使用 Snow Leopard 将 MySQL 和 Python 直接安装到我的 Mac 上。当您从 Apple 运行某些更新时,我听说过定制的 MySQL 和 Python 安装中断的恐怖故事。那,以及在不需要的情况下轻松禁用 Apache、MySQL、PHP 和 Python 在后台运行的能力是我选择 MAMP 的原因。

此网页上的第 8 号将引导您完成 Python 设置: http ://www.sitepen.com/blog/2008/05/16/supercharge-mamp/

有关 MAMP 的更多信息,请访问:http: //www.mamp.info/en/mamp/index.html

于 2010-12-27T22:36:43.767 回答