Django MySQL配置

来源:互联网 发布:巨人网络借壳对象 编辑:程序博客网 时间:2024/05/29 16:46

    Django默认支持 Mysql, Pgsql, oracle, sqllite。使用SqlLite时什么都不用安装,django已经自带客户端lib。数据库的Django官方文档。

https://docs.djangoproject.com/en/1.11/ref/databases/#mysql-notes

   以使用MySql为例子,首先需要在settings.py的Databases里设置MySql的登录信息。

DATABASES = {    'default': {        'ENGINE': 'django.db.backends.mysql',        'NAME': 'django_test',  #数据库名字        'USER': 'xx',          #mysql 登录名字        'PASSWORD': '123456',  #mysql 登录密码        'HOST': '192.168.1.21',        'PORT': '3306',    }}

    也可以采用OPTIONS的方式,这样就可以避免修改settings.py了。

# settings.pyDATABASES = {    'default': {        'ENGINE': 'django.db.backends.mysql',        'OPTIONS': {            'read_default_file': '/path/to/my.cnf',        },    }}# my.cnf[client]database = NAMEuser = USERpassword = PASSWORDdefault-character-set = utf8

     设置完成之后,你的django项目就会使用Mysql数据库了。

运行命令:python manage.py makemigrations  会在migrations目录下产生修改数据库的py文件,文件次序是00001,,0002一次类推。

python manage.py sqlmigrate app_name  migration_file_name  可以查看0001等文件生成的SQL语句。


python manage.py migrate 这个命令会最终操作你的数据库,所以运行migrate之前,数据库是不会有任何改变的。之所以有makemigrations 和migrate两个命令来完成修改数据库,主要是为了发布到生产环境方便。在开发环境中通过makemigrations生成修改数据库的py文件,再到生产环境中通过migrate来修改生产环境的数据库。


0 0
原创粉丝点击