zoukankan      html  css  js  c++  java
  • 项目数据库

    一. 创建数据库#

    Copy
    # 1.管理员连接数据库
    mysql -uroot -p密码
    
    # 2.创建数据库
    create database luffy default charset=utf8;
    
    # 3.查看用户
    select user,host,password from mysql.user;
    
    # 5.7之上的的版本查看命令 (提示: 5.7之后password字段变成了authentication_string字段)
    select user,host,authentication_string from mysql.user;
    

    二. 为指定数据库配置指定账户#

    提示: 以下的所有操作都是基于Root用户

    Copy
    # 设置权限账号密码
    # 授权账号命令:grant 权限(create, update) on 库.表 to '账号'@'host' identified by '密码'
    
    # 1.配置任意ip都可以连入数据库的账户 (提示:%表示任意的地址都可以远程链接)
    grant all privileges on luffyapi.* to 'luffyapi'@'%' identified by 'Luffy123?';
    
    # 2.由于数据库版本的问题,可能本地还连接不上,就给本地用户单独配置
    grant all privileges on luffyapi.* to 'luffyapi'@'localhost' identified by 'Luffy123?';
    
    # 3.刷新一下权限。 (提示: 如果不刷新,只会在下次登录时生效。)
    flush privileges;
    
    # 只能操作luffy数据库的账户
    账号:luffyapi
    密码:Luffy123?
    

    三. 配置文件配置#

    Copy
    DATABASES = {
        'default': {
            'ENGINE': 'django.db.backends.mysql',
            'NAME': 'luffyapi',
            'HOST': '127.0.0.1',
            'PORT': 3306,
            'USER': 'luffyapi',
            'PASSWORD': 'Luffy123?',
            'CHARSET': 'utf8',
        }
    }
    
    # 提示: 这里放在__init__.py或者配置文件中也可以。 本质只要是项目启动时加载文件会加载到它即可
    import pymysql
    pymysql.install_as_MySQLdb()
    

    拓展:项目上线, PASSWORD密码不因该存放到prod.py配置文件中。 因此存放到服务器中, 通过环境变量的获取存放。

    Copy
    # 伪代码实例
    password = sys.path.get('mysql_password', 'xxxx')
    
    
    DATABASES = {
        'default': {
            'ENGINE': 'django.db.backends.mysql',
            'NAME': 'luffy',
            'USER': 'luffy',
            'PASSWORD': password,
            'HOST': 'localhost',
            'PORT': 3306
        }
    }
    

    四. Django2.0.7版本之后使用pymysql启动项目时出现的2个问题#

    提示: Django采用2.0.7版本之后很可能出现以下问题,需要修改源代码

    第一步: 注释抛出的异常的2行代码。

    img

    第二步: 把decode修改成encode, 再将之前的那一行注释。

    img

     

  • 相关阅读:
    vue 给嵌套的iframe子页面传数据 postMessage
    左边宽度固定,右边宽度自适应的三种写法
    全局变量声明的规范化
    利用__index和__newindex实现默认值表、监控表、只读表
    Metatable和Metamethod
    Lua中的协同程序 coroutine
    Lua中的require
    Lua基础
    D3D的绘制
    效率相关笔记
  • 原文地址:https://www.cnblogs.com/Tornadoes-Destroy-Parking-Lots/p/13442929.html
Copyright © 2011-2022 走看看