配置 MySQL 数据库
django 支持的数据库
- PostgreSQL
- MySQL
- SQLite
- Oracle
来看看 settings.py 中数据库的配置,可以看出默认的数据库即为 sqlite3
# Database
# https://docs.djangoproject.com/en/1.8/ref/settings/#databases
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.sqlite3',
'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
}
}
修改数据库为 MySQL
在 settings.py 文件中修改 DATABASES
字段如下:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'test', ## 数据库名称
'USER': 'root',
'PASSWORD': 'password', ## 安装 mysql 数据库时,输入的 root 用户的密码
'HOST': '127.0.0.1',
}
}
MySQL 数据库的配置基本上是已经配置好了,然后看你系统中安装 MySQL没有,如果没有,要记得安装
安装MySQL后,安装 MySQLdb模块或者mysqlclient模块
如果你的python版本是3.0以上的版本,建议安装mysqlclient,MySQL-python已不支持python3
pip install mysqlclient
若是安装过程报依赖错误,先安装提示依赖包,然后再行安装
若提示Microsoft Visual C++ 14.0 is required
无法安装
error: Microsoft Visual C++ 14.0 is required. Get it with "Microsoft Visual C++ Build Tools": http://landinghub.visualstudio.com/visual-cpp-build-tools
实在不行,可以在https://www.lfd.uci.edu/~gohlke/pythonlibs/ 搜索Mysqlclient下载whl文件后安装。
下载哪一个呢?
cp后接python版本, 请与你的python版本对应
win32 - 只有默认32位
带amd是指电脑处理器为amd, 不带可以理解为intel处理器的
下载后,安装方式:找到whl所在文件夹,运行cmd,pip install E:\Desktop\mysqlclient-1.3.13-cp36-cp36m-win32.whl 安装完成即可
在配置完数据库mysite/settings.py后,通常需要运行
python manage.py syncdb
为数据库中每个应用建立一个数据库表。
然而如果你安装的Django Version >= 1.9,那么会出现如下问题:
Unknown command: 'syncdb'
在Django 1.9及未来的版本种使用migrate代替syscdb.
所以当Django 版本大于1.9