Django MySql 设置

0 投票
2 回答
5055 浏览
提问于 2025-04-16 02:06

我在Macports上安装了Mysql5、mysql5-server和py26-mysql。然后我启动了mysql服务器,并且可以通过mysql5命令进入提示符。

在我的settings.py文件中,我把数据库引擎设置为“mysql”,并把数据库名称设置为“dev.db”。

我把用户名和密码留空,因为数据库还不存在。

当我运行python manage.py syncdb时,django报了一个错。

错误信息是:'django.core.exceptions.ImproperlyConfigured: 加载MySQLdb模块时出错:动态模块没有定义初始化函数(init_mysql)'

我该怎么解决这个问题?我需要先创建数据库吗?还是说还有其他原因?

2 个回答

1

syncdb 并不会为你创建数据库,它只会在你的数据库结构中创建那些还不存在的表。你需要做以下几步:

  • 创建一个用户来“拥有”这个数据库(不要用 root 用户,这样不好)。
  • 用这个用户创建数据库。
  • 在 Django 的数据库设置中更新正确的数据库名称、用户和密码。
1

你需要安装 MySQLdb:http://sourceforge.net/projects/mysql-python/

这个安装过程可能会让人很头疼,具体情况取决于你的电脑设置。可以看看其他人在 StackOverflow 上讨论的关于在 Mac OS X 上安装 MySQLdb 的内容:

如何在 Mac OS X 上安装 MySQLdb(Python 访问 MySQL 的库)?

编辑:抱歉,我刚才没注意到你已经通过 py26-mysql 安装了 MySQLdb,但这个错误似乎说明安装过程中出了问题。我在 Mac OS X 上使用 MySQLdb 时遇到过很多问题,总是需要做一些不同的事情才能让它正常工作。

撰写回答