时间:2021-05-22
Django中默认使用sqlite3数据库,今天研究了下如何将它换成常见的mysql数据库。
由于项目用得python3,而MySQLdb没有支持python3的版本,如果使用python3.x版本时,pip install MySQLdb时会报错。
后来通过谷歌发现可以使用pymysql替代MySQLdb
1 在项目根目录下的__init__.py文件中加入如下代码:
import pymysqlpymysql.install_as_MySQLdb()2 使用mysqlclient代替MySQLdb,安装方式为:
pip install mysqlclient3 更改项目setting.py中对数据库的配置为:
DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME': 'test', 'USER': 'username', 'PASSWORD': 'passwd', 'HOST': 'localhost', 'PORT': '3306' }}4 最后通过python manage.py migrate命令,Django会在数据库中自动创建相应的表
Operations to perform:
Apply all migrations: admin, auth, contenttypes, polls, sessions
Running migrations:
Applying contenttypes.0001_initial... OK
Applying auth.0001_initial... OK
Applying admin.0001_initial... OK
Applying admin.0002_logentry_remove_auto_add... OK
Applying admin.0003_logentry_add_action_flag_choices... OK
Applying contenttypes.0002_remove_content_type_name... OK
Applying auth.0002_alter_permission_name_max_length... OK
Applying auth.0003_alter_user_email_max_length... OK
Applying auth.0004_alter_user_username_opts... OK
Applying auth.0005_alter_user_last_login_null... OK
Applying auth.0006_require_contenttypes_0002... OK
Applying auth.0007_alter_validators_add_error_messages... OK
Applying auth.0008_alter_user_username_max_length... OK
Applying auth.0009_alter_user_last_name_max_length... OK
Applying polls.0001_initial... OK
Applying sessions.0001_initial... OK
5 在创建admin用户时,遇到了如下报错
python manage.py createsuperuser
Superuser creation skipped due to not running in a TTY. You can run `manage.py createsuperuser` in your project to create one manually.
后来查了一下,是因为使用了git来执行命令,切换到Windows自带的命令行,可以解决该问题!
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
我的操作系统为centos6.51首先选择django要使用什么数据库。django1.10默认数据库为sqlite3,本人想使用mysql数据库,但为了测试方
Django项目默认使用sqlite数据库,但是我想用mysql数据库,应该如何配置呢。Django连接mysql数据库的操作,是通过根模块的配置实现的,在项目
前言MySQL数据库默认的数据库文件位于/var/lib/mysql下,有时候由于存储规划等原因,需要更改MySQL数据库的数据存储目录。下文总结整理了实践过程
本文实例讲述了mysql更改引擎(InnoDB,MyISAM)的方法,分享给大家供大家参考。具体实现方法如下:mysql默认的数据库引擎是MyISAM,不支持事
PHPmysqli_select_db()函数更改连接的默认数据库:删除数据库定义和用法mysqli_select_db()函数用于更改连接的默认数据库。总结以