首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为Python导入MySQL包时出错

为Python导入MySQL包时出错
EN

Stack Overflow用户
提问于 2015-07-23 19:49:35
回答 1查看 2K关注 0票数 7

我正在尝试使用python导入一个MySQL模块,更具体地说,尽管我收到了一个错误。我在应用程序中使用虚拟环境。以下是错误:

代码语言:javascript
复制
    Traceback (most recent call last):
  File "../myapp/application.py", line 9, in <module>
    from flask.ext.mysql import MySQL
  File "/Users/pavsidhu/Documents/Web-Development/app/env/lib/python2.7/site-packages/flask/exthook.py", line 81, in load_module
    reraise(exc_type, exc_value, tb.tb_next)
  File "/Users/pavsidhu/Documents/Web-Development/app/env/lib/python2.7/site-packages/flaskext/mysql.py", line 3, in <module>
    import MySQLdb
  File "/Users/pavsidhu/Documents/Web-Development/app/env/lib/python2.7/site-packages/MySQLdb/__init__.py", line 19, in <module>
    import _mysql
ImportError: dlopen(/Users/pavsidhu/Documents/Web-Development/app/env/lib/python2.7/site-packages/_mysql.so, 2): Library not loaded: /Library/Python/2.7/site-packages/_mysql.so
  Referenced from: /Users/pavsidhu/Documents/Web-Development/app/env/lib/python2.7/site-packages/_mysql.so
  Reason: image not found

我可以从错误中看出,它说Library not loaded: /Library/Python/2.7/site-packages/_mysql.so。当我使用虚拟环境时,路径是不正确的。应该是/lib/python2.7/site-packages/_mysql.so

有办法改变这种状况吗?谢谢。

编辑:

我发现OSX上有一个终端命令来更改库位置:

代码语言:javascript
复制
 sudo install_name_tool -change libmysqlclient.18.dylib /lib/python2.7/site-packages/MySQLdb/

不过,在按回车之后,我得到了这个:

代码语言:javascript
复制
Usage: /Library/Developer/CommandLineTools/usr/bin/install_name_tool [-change old new] ... [-rpath old new] ... [-add_rpath new] ... [-delete_rpath old] ... [-id name] input

我似乎没有输入错误的命令,有什么问题吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-08-01 13:36:20

通常,尝试像瘟疫一样避免系统python安装。是的,甚至把你的虚拟世界建立在它的基础上。它往往会产生难以理解的问题。

我建议您获得自制软件,然后为头安装python和mysql:

代码语言:javascript
复制
brew install python
brew install mysql

然后根据brew中的python构建您的虚拟服务器:

代码语言:javascript
复制
virtualenv venv --python /usr/local/bin/python

我知道,这是一个更多的循环通过,但它将使您的开发过程更容易。更不用说brew本身也是对开发人员的巨大帮助。

我刚刚检查了它是否有效,我花了两分钟才得到一个工作的MySQLdb。

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

https://stackoverflow.com/questions/31596802

复制
相关文章

相似问题

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