• django 连接mysql


    一:环境设置:

    因为我用的python3.x  django的版本较低。连接mysql 需要 mysql-python 需要mysqldb来连接,最后安装mysqldb的时候,需要安装python2.7。 崩溃。

    最后网上查只需要修改project里的__int__.py文件。添加如下既可用pymysql  坑啊。折腾一晚上。

    1 import pymysql
    2 pymysql.install_as_MySQLdb()

     当前需要安装pymysql模块。

    然后在setting.py里设置:

     1 DATABASES = {
     2     'default': {
     3         'ENGINE': 'django.db.backends.mysql',#数据库连接引擎。
     4         'NAME': 'django',#数据库的名字。
     5         'USER': 'evil',#用户。
     6         'PASSWORD': '123',#密码
     7         'HOST': '192.168.31.222',#连接IP
     8         'PORT': '3306',#端口。
     9     }
    10 }

     因为连接不同的数据库数据库的引擎是不一样的。

    1 'django.db.backends.postgresql'
    2 'django.db.backends.mysql'
    3 'django.db.backends.sqlite3'
    4 'django.db.backends.oracle'

    如果使用 SQLite,请对数据库文件指定完整的文件系统路径。 例如

    1 DATABASE_NAME = '/home/django/mydata.db'

    HOST: 告诉 Django 连接哪一台主机的数据库服务器。 如果数据库与 Django 安装于同一台计算机(即本机),可将此项保留空白。 如果你使用SQLite,此项留空。
    此处的 MySQL 是一个特例。 如果使用的是 MySQL 且该项设置值由斜杠(  '/' )开头,MySQL 将通过Unix socket 来连接指定的套接字,例如

    1 DATABASE_HOST = '/var/run/mysql'

    二:数据库设置:

    给远程IP授权访问:

    1  GRANT ALL PRIVILEGES ON *.* TO 'evil'@'192.168.1.100'WITH GRANT OPTION; 

     给用户授权并赋予密码:

    Grant all on django.* to 'evil'@'192.168.31.125' identified by "123"

    三:测试
    当我们设置好前2项之后,我们需要测试我们的连接串是否有问题:

    打开terminal 执行如下命令:

    python manage.py shell

    如果没报错,说明我们建立的连接是没问题的。

    如上是连接非默认sqlite的数据库的方法.

  • 相关阅读:
    浅谈一致性Hash原理及应用
    学习sql中的排列组合,在园子里搜着看于是。。。
    SQL Server DAC——专用管理员连接
    通过phantomjs 进行页面截图
    《javascript算法--对象的比较》
    React-生命周期的相关介绍
    常用的谷歌插件
    webpack的externals的使用
    mac 10.12显示隐藏文件
    “文字”聚合、散出动画-转自奇舞团
  • 原文地址:https://www.cnblogs.com/evilliu/p/5931598.html
Copyright © 2020-2023  润新知