【问题标题】:unable to get mysql working with django无法让 mysql 与 django 一起工作
【发布时间】:2014-05-15 00:51:04
【问题描述】:

我正在努力学习 Django。我有一些编程经验,但我是 Django 和 python 的新手。我已经安装了 Django,现在尝试将它与 MySQL 连接。我还安装了 MAMP 并创建了数据库并编辑了 settings.py。但是当我尝试运行 Django 时出现以下错误:

django.core.exceptions.ImproperlyConfigured:加载 MySQLdb 模块时出错:没有名为 MySQLdb 的模块

我在 settings.py 中添加了以下内容:

DATABASES = {
'default': {
    'ENGINE': 'django.db.backends.mysql',
    'NAME': 'mysitedb',
    'USER': 'root',
    'PASSWORD': 'root',
    'HOST': 'localhost',
    }
}

我错过了什么吗?我在谷歌上查了一下,我可以看到一个线程在终端中使用以下命令安装 python-mysql:

pip 安装 MySQL-python

但是这个命令没有为我运行,我得到以下错误:

Command python setup.py egg_info failed with error code 1 in /private/var/folders/1n/1r7lvnh53k5g46zpl3jsvz7h0000gr/T/pip_build_pankaj/MySQL-python
Storing complete log in /Users/pankaj/Library/Logs/pip.log

P.S:我使用的是 Mac OS 10.9。

【问题讨论】:

    标签: python mysql django


    【解决方案1】:

    可能缺少一些 mysql 库,只需安装即可

    brew install mysql
    

    然后用 pip 安装 MySQL-python

    【讨论】:

      【解决方案2】:

      我在 Mac 上遇到了与 python3Django 1.9 类似的问题-

      运行:

      $ pip install mysqlclient

      如果还是不行就试试:

      export PATH=$PATH:/usr/local/mysql/bin 或者你的mysql路径是什么 对我来说是 /usr/local/Cellar/mysql/5.6.26/bin

      https://github.com/PyMySQL/mysqlclient-python

      【讨论】:

        【解决方案3】:
        sudo apt-get install python-mysqldb
        

        使用django the definitive guide。对于初学者来说非常简单

        mac 用户

        sudo pip install MySQL-python
        

        【讨论】:

        • OP 使用的是 Mac,所以 apt-get 不合适
        • sudo pip install MySQL-python
        • 当我尝试运行上面的命令时,我得到 EnvironmentError: mysql_config not found
        • 然后... 命令 python setup.py egg_info 失败,错误代码 1 在 /private/tmp/pip_build_root/MySQL-python
        • 安装 libmariadbclient-dev 并使用 sudo python setup.py 您的系统上似乎缺少 mysql_config 或安装程序找不到它。 export PATH=$PATH:/usr/local/mysql/bin 它会帮助你
        【解决方案4】:

        我怀疑运行 sudo pip install MySQL-python 会解决您的问题。

        也就是说,更好的选择是安装virtualenv,创建一个开发环境,然后安装 Django 和所有必需的模块,例如 MySQL-python。这样做将消除使用sudo 安装模块的需要,另外还有一个好处是,如果一切都出现可怕的错误,回滚甚至只是破坏环境会更容易。

        【讨论】:

        • 要修复您的新错误,请尝试运行export PATH=$PATH:/usr/local/mysql/bin,然后再次尝试sudo pip install mysql-python
        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2011-04-02
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-02-29
        相关资源
        最近更新 更多