【问题标题】:VirtualEnv ImportError: No module named MySQLdbVirtualEnv ImportError:没有名为 MySQLdb 的模块
【发布时间】:2018-07-15 00:38:01
【问题描述】:

每当我尝试运行本地开发服务器时,我都会收到错误消息:ImportError: No module named MySQLdb,这让我发疯。我已经尝试了所有可以在网上找到的方法:

  1. brew install mysql
  2. pip install mysqldb
  3. pip install mysql
  4. pip install mysql-python
  5. pip install MySQL-python
  6. easy_install mysql-python
  7. easy_install MySQL-python
  8. pip install mysqlclient

我的选项不多了,不知道为什么我会继续收到此错误。我正在尝试在 macOS Sierra 系统上使用 Google App Engine 运行我的本地开发服务器,并且我使用的是 python 2.7 版。我也在运行:source env/bin/activate 在我的项目文件所在的目录中,并且正在那里安装所有依赖项。我的路径如下所示:

/usr/local/bin/python:/usr/local/mysql/bin:/usr/local/opt/node@6/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Library/Frameworks/Python.framework/Versions/2.7/bin

有没有人有进一步的想法可以尝试解决这个问题?

【问题讨论】:

  • 你应该使用 PyMySQL。

标签: python mysql django pip mysql-python


【解决方案1】:

当你在虚拟环境(source venv/bin/activate)中时,只需在终端中运行:

sudo apt-get install python3-mysqldb
sudo apt-get install libmysqlclient-dev
pip install mysqlclient

您不必在 py 文件中导入任何内容。

第一个是为了以防万一,但其他两个可以自己完美地工作。

如果你不运行libmysqlclient-dev,你将无法在虚拟环境中运行任何其他mysql安装命令。

【讨论】:

    【解决方案2】:

    原来我在 virtualenv 中指向了错误的 python。它预装了自己的默认 python 版本,因此,我创建了一个新的 virtualenv 并使用 -p 将 python 路径设置为我自己的本地 python 路径。

    【讨论】:

      猜你喜欢
      • 2014-04-10
      • 2014-01-30
      • 2020-04-16
      • 1970-01-01
      • 2013-07-11
      • 1970-01-01
      • 2016-06-17
      • 2015-08-19
      • 2017-06-18
      相关资源
      最近更新 更多