ICode9

精准搜索请尝试: 精确搜索
首页 > 数据库> 文章详细

luffy数据库的创建

2021-05-20 14:54:27  阅读:202  来源: 互联网

标签:创建 数据库 luffy pymysql mysql password luffyapi




一、创建数据库

  • 新建一个luffy数据库

    # 1.管理员连接数据库
    mysql -uroot -p密码
    
    # 2.创建数据库
    create database luffy default charset=utf8;
     
  1. 可以使用图形化工具Navicat创建,鼠标点点即可

  2. 可以使用命令行创建

进入到该数据库查看数据库用户

# 使用luffy数据库use luffy# 查看用户select user,host,password from mysql.user;# 5.7之上的的版本查看命令 (提示: 5.7之后password字段变成了authentication_string字段)select user,host,authentication_string from mysql.user;

image-20210503151624552

二、创建用户,授予权限

注意:基于root用户进行的操作

创建luffy用户,授予luffy库所有权限

# 设置权限账号密码# 授权账号命令: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?

三、在Django项目中配置

1.在 setting.py (dev.py)中配置

# 1.安装配置数据库mysqlDATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': 'luffy',
        'USER': 'luffy',
        'PASSWORD': 'Luffy123?',
        'HOST': 'localhost',
        'PORT': 3306,
        'CHARSET': 'utf8',
    }}# 2.安装pymysql,或者是mysqlclient
	-运气好:一把装好就用mysqlclient   		-pip3 install mysqlclient   	-或者使用pymysql(django版本超过2.0.7,需要改源码)    	-使用pymysql不要忘了在配置文件中加入        import pymysql
		pymysql.install_as_MySQLdb()

问题:如果项目上线后代码泄露,数据库密码很容易泄露,安全性不高,所以,一般我们PASSWORD密码不因该存放到pro.py或者dev.py配置文件中。 因此存放到服务器中, 通过环境变量的获取存放。

2.通过服务器环境变量来存放/获取密码

image-20210503160834977

password = os.getenv('mysql_password','Luffy12333')  # 或者下面语句# password = os.environ.get('MYSQL_PASSWORD','Luffy12333'))DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': 'luffy',
        'USER': 'luffy',
        'PASSWORD': password,
        'HOST': 'localhost',
        'PORT': 3306
    }}import pymysql
pymysql.install_as_MySQLdb()

  • Windows配置完环境变量需要重启电脑,否则启动项目报错

  • Linux重新加载配置文件即可

# 方式一:source /etc/profile# 方式二:. /etc/profile

使用pymysql 版本问题出现的报错信息 :

使用pymysql时, Django版本超过 2.0.7 的时候就会出现这种错误

image-20210503165232021

image-20210503165338658

# 修改前query = query.decode(errors='replace')# 修改后query = query.encode(errors='replace')

修改后启动成功

PS: 如果不想使用pymysql,可以直接安装mysqlclient

pip install mysqlclient# mysqlclient 比较难装, 运气好一次可以装好, 是在不行不要强求

标签:创建,数据库,luffy,pymysql,mysql,password,luffyapi
来源: https://blog.51cto.com/u_15073468/2793470

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有