使用mysql的django上的syncdb错误
Posted
技术标签:
【中文标题】使用mysql的django上的syncdb错误【英文标题】:syncdb error on django using mysql 【发布时间】:2013-09-19 13:23:19 【问题描述】:我是 django 的新手。 我正在使用 ubuntu 13.04
虽然我通过 phpmyadmin 创建了数据库,并且还在 settings.py 中输入了凭据 但是当我在控制台中输入时
python manage.py syncdb
我收到了这个错误
Traceback(最近一次调用最后一次):
文件“manage.py”,第 10 行,在
execute_from_command_line(sys.argv)
文件“/usr/local/lib/python2.7/dist-packages/django/core/management/init.py”,第 453 行,在 execute_from_command_line 中
utility.execute()
文件“/usr/local/lib/python2.7/dist-packages/django/core/management/init.py”,第 392 行,在执行中
self.fetch_command(subcommand).run_from_argv(self.argv)
文件“/usr/local/lib/python2.7/dist-packages/django/core/management/init.py”,第 272 行,在 fetch_command
klass = load_command_class(app_name, subcommand)
文件“/usr/local/lib/python2.7/dist-packages/django/core/management/init.py”,第 77 行,在 load_command_class
module = import_module('%s.management.commands.%s' % (app_name, name))
文件“/usr/local/lib/python2.7/dist-packages/django/utils/importlib.py”,第 35 行,在 import_module 中
__import__(name)
文件“/usr/local/lib/python2.7/dist-packages/django/core/management/commands/syncdb.py”,第8行,在
from django.core.management.sql import custom_sql_for_model, emit_post_sync_signal
文件“/usr/local/lib/python2.7/dist-packages/django/core/management/sql.py”,第9行,在
from django.db import models
文件“/usr/local/lib/python2.7/dist-packages/django/db/init.py”,第 40 行,
backend = load_backend(connection.settings_dict['ENGINE'])
文件“/usr/local/lib/python2.7/dist-packages/django/db/init.py”,第 34 行,在 getattr
return getattr(connections[DEFAULT_DB_ALIAS], item)
文件“/usr/local/lib/python2.7/dist-packages/django/db/utils.py”,第 93 行,在 getitem
backend = load_backend(db['ENGINE'])
文件“/usr/local/lib/python2.7/dist-packages/django/db/utils.py”,第 27 行,在 load_backend 中
return import_module('.base', backend_name)
文件“/usr/local/lib/python2.7/dist-packages/django/utils/importlib.py”,第 35 行,在 import_module 中
__import__(name)
文件“/usr/local/lib/python2.7/dist-packages/django/db/backends/mysql/base.py”,第17行,在
raise ImproperlyConfigured("Error loading MySQLdb module: %s" % e)
django.core.exceptions.ImproperlyConfigured:加载 MySQLdb 模块时出错:没有名为 MySQLdb 的模块
我尝试在 settings.py 中为数据库名称提供扩展名,但没有成功。 请建议该怎么做。 谢谢!
【问题讨论】:
【参考方案1】:或者你可以这样做:
sudo apt-get install python-mysqldb
【讨论】:
【参考方案2】:你的虚拟环境中是否安装了 mysql
试试
pip install MySQL-python
【讨论】:
以上是关于使用mysql的django上的syncdb错误的主要内容,如果未能解决你的问题,请参考以下文章
运行 Django 的 syncdb 时 OSX 10.7.3 上的 Postgresql 套接字错误
Django-MySQL 启用 Row_Format=使用 syncdb 压缩
Django 1.8 和 syncdb / migrate 的 auth_user 错误