zoukankan      html  css  js  c++  java
  • 0005 Django工程配置(02 关系数据库sqlLite,mysql配置)

      本项目中包括两个关系数据库,sqlLite和mysql。sqlLite数据库是Django自带的,mysql需要自己配置。

    1 sqlLite配置

      sqlLite是Django默认数据库。

    DATABASES = {
        'default': {
            'ENGINE': 'django.db.backends.sqlite3', # 数据库引擎
            'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
        }
    }
    

      只需要在PyCharm Terimal终端执行数据迁移指令,就会自动生成sqlLite数据库。

      执行数据迁移的指令如下:

    python manage.py makemigrations
    python manage.py migrate

    2 mysql配置

    2.1 mysql数据库配置

    MYSQL_SERVER = '' # 服务器域名或IP
    DATABASES = {
        'default': {
            'ENGINE': 'django.db.backends.mysql', # 数据库引擎
            'NAME': '', # 数据库名
            'USER': 'root', # 数据库用户名
            'PASSWORD': '', # 数据库密码
            'HOST': MYSQL_SERVER,
            'PORT': '3306', # 数据库商品,默认3306
            # 'OPTIONS': {
            #     "init_command": "SET sql_mode='STRICT_TRANS_TABLES'",
            # }
        }
    }

    2.2 mysql数据库创建

      mysql数据库可以创建在本地windows系统,也可以创建在远程服务器上。只要有数据库名、数据库IP,数据库用户名和密码就可以访问。

      要操作mysql数据库的前提是:数据库必须存在。

    2.3 在PyCharm Terminal终端执行数据迁移命令,如果正确,则表示连接成功。

    2.4 本地mysql部署

      程序员在开发的时候,需要部署本地环境,有本地mysql数据库,一方面速度快,效率高,另一方面也不容易破坏服务器的数据。所以,本地部署mysql数据库非常重要。

      本地部署mysql步骤如下:

    2.4.01 检查及卸载原版本

      打开windows系统服务有以下两种方式:

      右击"我的电脑/计算机",点击管理,打开计算机管理,依次选择服务和应用程序—服务。

      使用快捷命令:win+r,在窗口中输入services.msc,即可打开服务。

     2.4.02 停止和卸载mysql服务

      以管理员身份进入cmd

      停止命令:net stop mysql

      卸载命令: mysqld –remove mysql

    2.4.03 下载Mysql安装包

      本人下载的5.7.13部署正常。mysql下载

     2.4.04 检查安装包目录 

     2.4.05 配置环境变量

      安装前先配置下环境变量:

      右击我的电脑/计算机,点击属性,打开高级系统设置,点击环境变量。

      变量名:MYSQL_HOME

      变量值:D:DjangoDevelopmentmysql5.7.13

      path里添加:%MYSQL_HOME%in

    2.4.06 创建数据库目录及配置文件

      此版本MySQL并没有创建data目录及my.ini。在MYSQL_HOME目录下创建data目录,建议将data目录设为D:DjangoDevelopmentmysql5.7.13data。另外,创建Uploads目录作为MySQL导入导出的目录。my.ini建议放在MYSQL_HOME目录下:

    [mysqld]
    port=3306
    character_set_server=utf8
    basedir=D:DjangoDevelopmentmysql5.7.13
    datadir=D:DjangoDevelopmentmysql5.7.13data
    server-id=1
    sql_mode=NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
    lower_case_table_names=1
    innodb_file_per_table = 1
    log_timestamps=SYSTEM
    
    log-error   = error.log
    slow_query_log = 1
    slow_query_log_file = slow.log
    long_query_time = 5
    log-bin = binlog
    binlog_format = row
    expire_logs_days = 15
    log_bin_trust_function_creators = 1
    secure-file-priv=D:DjangoDevelopmentmysql5.7.13Uploads
    
    [client]   
    default-character-set=utf8
    

      完整的目录结构如下:

     2.4.07 初始化数据库

      以管理员身份进入CMD(win+X),D:DjangoDevelopmentmysql5.7.13in目录,执行:

      mysqld --initialize-insecure

      执行完毕之后,在data目录下会生成很多文件。

     2.4.08 注册并启动MySQL服务

      以管理员身份进入cmd

      安装服务:mysqld –install MySQL57安装服务(install后面是服务的名字,我们这里以MySQL57作为mysql5.7的服务名)

      启动服务:net start MySQL57启动MySQL服务。

    2.4.09 登录并修改密码

      由于初始化设置或版本差异,有些版本安装完成后root是空密码,有些是临时密码,我们需要查看error log日志提示。

    由于初始化设置或版本差异,有些版本安装完成后root是空密码,有些是临时密码,我们需要查看error log日志提示。


      打开error日志,发现我这里是空密码。

     2.4.10 登录数据库

      在cmd登录数据库

      C:Userschen>mysql -uroot

     1.4.11 常用操作

      mysql> user mysql

      mysql> update user set authentication_string=PASSWORD("Chengl139!") where User='root';

      mysql> update user set plugin="mysql_native_password";

      mysql> flush privileges;

      mysql> exit

      停止启动服务:

      C:Userschen> net stop MySQL57

      C:Userschen> net start MySQL57

        C:Userschen>mysql -uroot -pChengl139!

        此时可以对数据库进行相关作。

      创建数据库

      CREATE DATABASE student CHARACTER SET UTF8 COLLATE UTF8_GENERAL_CI;

      用Navicat访问数据库

  • 相关阅读:
    [机器学习]Fine Tune
    行人重识别综述
    OverFeat:基于卷积网络的集成识别、定位与检测
    HOG行人目标检测
    You Only Look Once Unified, Real-Time Object Detection(你只需要看一次统一的,实时的目标检测)
    目标检测:AlexNet
    目标检测Object Detection概述(Tensorflow&Pytorch实现)
    c++ 函数的默认参数
    C++空类
    C++中三种创建对象的方法【转】
  • 原文地址:https://www.cnblogs.com/dorian/p/12404435.html
Copyright © 2011-2022 走看看