zoukankan      html  css  js  c++  java
  • 掌握MySQL 1

    一、数据库管理软件的由来

      1、数据与文件的分离,文件存放于一台机器,多台机器通过网络访问文件。

      2、用 socket 服务端来管理数据库服务器上的文件,然后用客户端进行访问。

      3、把程序员从数据管理中解脱出来,专注于自己的程序逻辑的编写。

    二、数据库概述

      2.1、什么是数据(Data)

        描述事物的符号记录

        计算机中描述一个事物,就需要抽取这一事物的典型特征,组成一条记录,就相当于文件里的一行内容。

        name  sex  age  birth

        byx   male  18    1994

      2.2、什么是数据库(DataBase)

        数据库中的数据按一定的数据模型组织、描述和储存,具有较小的冗余度、较高的数据独立性和易扩展性,并可为各种用户共享。

      2.3、什么是数据库管理系统(DataBase Management System)

        mysql:主要用于大型门户,如搜狗、新浪等,它主要的优势是开放源代码。是甲骨文公司的免费产品。

        oracle:主要用于银行、铁路、飞机场等。该数据库功能强大,软件费用高。也是甲骨文公司的产品。

        sql server:主要应用于大中型企业,如联想、方正等。是微软公司的产品。

      2.4、数据库服务器、数据管理系统、数据库、表与记录的关系。

        数据库服务器:运行数据库管理软件

        数据库管理软件:管理数据库

        数据库:即文件夹,用来组织文件

        表:即文件,用来存放多条记录

    三、MySQL介绍

      1、MySQL是什么

        一个基于 socket 编写的 c/s 架构的软件

        客户端软件
          MySQL自带:MySQL命令、MySQLdump 命令等

          python模块:pymysql

      2、数据库管理软件分类

        关系型:需要有表结构,如 mysql, sqllite, db2, oracle, access等,sql 语句通用

        非关系型:以键值对方式储存,没有表结构。如 mongodb, redis, memcache

    四、MySQL 安装

      1、添加环境变量

      2、将 MySQL 服务器制作成 Windows 服务

        MySQL --install

    五、MySQL 软件基本管理

      5.1、登录、设置密码

        设置初始密码:mysqladmin -uroot password'123' 

        修改密码:MySQLadmin -uroot -p'123' password'456'

        登录:MySQL -h127.0.0.1 -uroot -p456

              mysql  -uroot -p

           mysql  以 root 用户登录

      5.2、忘记密码

        1、跳过用户名和密码验证功能,启动服务端

          mysqld --skip-grant-tables

        2、修改管理员用户对应的密码

          update mysql.user set password=password(123) where user='root' and host='localhost';

        3、关闭当前服务端,重新以校验用户名密码的方式启动

      5.3、为 mysql 服务指定配置文件   

    #在mysql的解压目录下,新建my.ini,然后配置
    #1. 在执行mysqld命令时,下列配置会生效,即mysql服务启动时生效
    [mysqld]
    ;skip-grant-tables
    port=3306
    character_set_server=utf8
    default-storage-engine=innodb
    innodb_file_per_table=1
    
    
    #解压的目录
    basedir=E:mysql-5.7.19-winx64
    #data目录
    datadir=E:my_data #在mysqld --initialize时,就会将初始数据存入此处指定的目录,在初始化之后,启动mysql时,就会去这个目录里找数据
    
    
    
    #2. 针对客户端命令的全局配置,当mysql客户端命令执行时,下列配置生效
    [client]
    port=3306
    default-character-set=utf8
    user=root
    password=123
    
    #3. 只针对mysql这个客户端的配置,2中的是全局配置,而此处的则是只针对mysql这个命令的局部配置
    [mysql]
    ;port=3306
    ;default-character-set=utf8
    user=egon
    password=4573
    
    
    #!!!如果没有[mysql],则用户在执行mysql命令时的配置以[client]为准

      5.4、统一字符编码

    #1. 修改配置文件
    [mysqld]
    default-character-set=utf8
    [client]
    default-character-set=utf8
    [mysql]
    default-character-set=utf8

    #mysql5.5以上:修改方式有所改动
    [mysqld]
    character-set-server=utf8
    collation-server=utf8_general_ci
    [client]
    default-character-set=utf8
    [mysql]
    default-character-set=utf8

    #2. 重启服务
    #3. 查看修改结果:
    s
    show variables like '%char%'

    六、初识 sql 语句

      6.1、sql 语言主要用于存取数据、查询数据、更新数据和管理关系数据库系统。

        sql 语言由 IBM 开发,分为三种类型:

          1、DDL语句  数据库定义语言:数据库、表、视图、索引、存储过程。例如 create、drop、alter

          2、DML语句  数据库操纵语言:插入数据 insert、删除数据 delete、更新数据 update、查询数据 select

          3、DCL语句  数据库控制语言:控制用户的访问权限 grant、remove

      6.2、基本操作     

        1、操作文件夹(数据库)
    增:create database db1 charset utf8;
    
    查:show databases;
    
    改:alter database db1 charset latin1;
    
    删:drop database db1;

        2、操作文件(数据)      

    增:create table t1(id int,name char);
    
    查:show tables;
    
    改:alter table t1 modify name char(3);
      alter table t1 change name name1 char(2)
    
    删:
    drop table t1;

        3、操作文件中的内容(记录)

    增:insert into t1 values(1,'a'),(2,'b'),(3,'c');
    
    查:select * from t1;
    
    改:updata t1 set name='sb' where id=2;
    
    删:delete from t1 where id=1;
    
    清空表:delete from t1;  # 如果有自增 id,新增的数据,仍然是以删除前的最后一条作为起始。
    
        truncate table t1;  # 数据量大,删除速度比上一条快,且直接从零开始
  • 相关阅读:
    Django---Django的中间件
    Django---Django的ORM的一对多操作(外键操作),ORM的多对多操作(关系管理对象),ORM的分组聚合,ORM的F字段查询和Q字段条件查询,Django的事务操作,额外(Django的终端打印SQL语句,脚本调试)
    Django---ORM的常用字段和自定义字段,DjangoORM字段与数据库类型对应,字段参数和Meta的参数,Django的admin操作,13中orm操作方法,单标的双下方法
    Django---路由系统,URLconf的配置,正则表达式的说明(位置参数),分组命名(捕获关键字参数),传递额外的参数给视图,命名url和url的反向解析,url名称空间
    Django---CBV和FBV的使用,CBV的流程,给视图加装饰器,Request对象方法,属性和Response对象,form表单的上传
    Django---图书管理系统,多对多(ManyToMany),request获取多个值getlist(),反查(被关联的对象.author_set.all)
    Django---简易图书管理系统(B/S架构)
    从Base64编码转换为图片文件
    图片转化成base64字符串
    设置Linux的一些文本输出方式
  • 原文地址:https://www.cnblogs.com/binyuanxiang/p/11374838.html
Copyright © 2011-2022 走看看