Django中怎么更改默认数据库为mysql(详细过程)


本文摘自php中文网,作者不言,侵删。

本篇文章给大家带来的内容是关于Django中怎么更改默认数据库为mysql(详细过程),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

Django中默认使用sqlite3数据库,今天研究了下如何将它换成常见的mysql数据库。

由于项目用得python3,而MySQLdb没有支持python3的版本,如果使用python3.x版本时,pip install MySQLdb时会报错。

后来通过谷歌发现可以使用pymysql替代MySQLdb

1 在项目根目录下的__init__.py文件中加入如下代码:

1

2

import pymysql

pymysql.install_as_MySQLdb()

2 使用mysqlclient代替MySQLdb,安装方式为:

1

pip install mysqlclient

3 更改项目setting.py中对数据库的配置为:

1

2

3

4

5

6

7

8

9

10

DATABASES = {

    'default': {

        'ENGINE': 'django.db.backends.mysql',

        'NAME': 'test',

        'USER': 'username',

        'PASSWORD': 'passwd',

        'HOST': 'localhost',

        'PORT': '3306'

    }

}

4 最后通过python manage.py migrate命令,Django会在数据库中自动创建相应的表

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

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用户时,遇到了如下报错

1

2

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自带的命令行,可以解决该问题!

以上就是Django中怎么更改默认数据库为mysql(详细过程)的详细内容,更多文章请关注木庄网络博客!!

相关阅读 >>

Python tuple有什么用

Python如何实现可视化箱线图

Python 装饰器详解

Python语言基础都有哪些

为何选择Python进行数据分析

Python字典的值可以是字典吗

Python 的二元算术运算详解

学会Python爬虫怎么赚钱

Python的换行符是什么?

Python爬虫可以赚钱吗

更多相关阅读请进入《Python》频道 >>




打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...