2010-06-19 126 views
1

我试图通过搜索和搜索来解决这个问题,但是我无法使其工作。 :(我在雪豹10.6.4,并试图设置我的Django环境,首先我升级了我的python 2.6.5,安装了django,然后mysql_python。所有似乎都很顺利,直到我用syncdb连接到mysql。Snow Leopard上的MySQL_Python

得到这个错误/跟踪消息:django.core.exceptions.ImproperlyConfigured: Error loading MySQLdb module: No module named MySQLdb

我试过下面提供的解决方案http://forums.mysql.com/read.php?50,282410,286676,但仍然是相同的,我相信它的东西与我的Python版本,因为当我执行/usr/bin/python返回Python 2.6.1但是当我只是键入python它说'Python 2.6.5'。

任何人?我想当我建立和安装mys ql_python使用ARCHFLAGS="-arch x86_64" /usr/bin/python setup.py build命令它使用SL上的默认django版本(2.6.1)而不是新版本(2.6.5)。

任何我可以得到这个与2.6.5一起工作?谢谢。

回答

0

首先感谢您的答案! :)让我觉得,并帮助我解决问题。

所以我所做的就是确定我的python 2.6.5 shell运行的是什么架构。得到这个How do I determine if my python shell is executing in 32bit or 64bit mode on OS X?,发现它运行在32位。我必须是mysql python不能工作的唯一原因,因为我已经安装了64位mysql。

然后,我删除了/usr/local上的mysql,并使用这个方便的小技巧http://egopoly.com/2009/09/01/how-to-uninstall-mysql-5-1-on-snow-leopard/只是为了确保32位的mysql安装程序不会抱怨。

我下载mysql_python再次和编辑线26setup_posix.pymysql_config.path = "mysql_config"文件mysql_config.path = "/usr/local/mysql-5.1.48-osx10.6-x86/bin/mysql_config",然后执行以下命令python setup.py buildsudo python setup.py install

然后瞧! :D它正在工作!现在我可以睡了。再一次感谢你的帮助!

0

类型:

which python 

弄不清在那里拉蟒2.6.5(这是不一样分布由苹果当前蟒)。你可能能够将/ usr/bin/python链接到2.6.5安装,但是,这看起来像是在寻求麻烦。

你可以在你的虚拟环境中安装你的mysqldb,这将把它放在正确的地方。我猜你是从.dmg或者source安装的python,但它并没有完全安装,或者没有按照原意覆盖Apple提供的版本。

0

您可能正在使用Python版本,具体取决于调用Python时PATH环境变量的值。重要的是,苹果自己的Python保留在/usr/bin的系统中,因为它被操作系统的其他部分使用,并且你不想冒险破坏这些,所以你的替代Python很可能安装在/usr/local/bin(除非你使用Darwin或喜欢安装它,在这种情况下,它将在/opt之下)。

可以安装在任一分机或Python的两个版本 - 如果您使用的是安装正常python setup.py install终端命令,附加将被安装为你与运行setup.py的的python版本, 例如。最简单的可能是在两者上安装(或者使用virtualenv作为其他答案的建议) - 所需要的是两个命令,系统版本为/usr/bin/python setup.py install,并且(如果您的附加版本在/usr/local/bin/usr/local/bin/python setup.py install。 (其中之一或两者可能需要以sudo为前缀,具体取决于您如何为涉及的各种目录设置权限和所有权)。