• 【第一章 MySQL概述】


    第一章 MySQL概述(数据库、SQL、MySQL数据类型,关系型数据库,非关系型数据库)

    1.数据库、数据库管理系统、SQL
    ①数据库(DataBase):存储数据的仓库,数据是有组织的进行存储。
    ②数据库管理系统(Database Manager System):操作和管理数据库的大型软件。
    ③SQL:操作关系型数据库的编程语言,定义了一套操作关系型数据库的统一标准。
    2.关系型数据库
    (1)关系模型:(表的形式组织数据)
    ①使用表来表示实体与实体之间关系的数据模型称为关系数据模型。
    ②一个关系数据库就是由若干个表组成,关系模型用表的集合来表示数据与数据之间的关系。
    (2)关系模型中常用的概念:
    ①关系:可以理解为一张二维表,每个关系都具有一个关系名,就是通常所说的表名;
    ②元组:可以理解为二维表中的一行,在数据库中经常被称为记录;
    ③属性:可以理解为二维表中的一列,在数据库中经常被称为字段;
    ④域:属性的取值范围,也就是数据库中某一列的取值范围;
    ⑤关键字:一组可以标识唯一元组的属性,数据库中通常称为主键,由一个或多个列组成;
    ⑥关系模式:指对关系的描述。其格式为:关系名(属性1,属性2,…属性n),在数据库中成为表结构。
    (3)优点:
    ①容易理解:使用二维表,相对网状,层次模型等其他模型更容易理解;
    ②使用方便:通用的SQL语言使得操作关系型数据库非常方便。
    ③易于维护:丰富的完整性(实体完整性,参照完整性,用户自定义完整性)大大减少了数据冗余和数据不一致的概率。
    (4)瓶颈:
    ①高并发读写需求:网站的用户并发性非常高,往往达到每秒上千万次读写请求。
    ②海量数据的高效率读写:在一张包含海量数据的表中查询数据,效率非常低。
    ③高扩展性和可用性:基于web的结构中,数据库是最难横向扩展的。
    关系型数据库中,导致性能欠佳的主要原因是多表的关联查询,以及复杂 大数据分析类型的复杂SQL报表查询。
    (5)常见关系型数据库:
    ①Oracle:大型的收费数据库。
    ②MySQL:开源免费的中小型数据库,目前Oracle推出了收费版本的MySQL,也提供了免费的社区版本。
    ③SQL Server:Microsoft 公司推出的收费的中型数据库,C#、.net等语言常用。
    ⑤PostgreSQL:开源免费的中小型数据库。
    ⑥DB2:IBM公司的大型收费数据库产品。
    ⑦SQLLite:嵌入式的微型数据库。Android内置的数据库采用的就是该数据库。
    ⑧MariaDB:开源免费的中小型数据库。
    3.非关系型数据库
    (1)以键值对存储,且结构不固定,每一个元组可以有不一样的字段,每个元组可以根据需要增加一些自己的键值对,这样就不会局限于固定的结构,可以减少一些时间和空间的开销。仅需要根据id取出相应的value就可以完成查询。
    (2)非关系型数据库由于很少的约束,他不能够提供像SQL所提供的where这种对于字段属性值情况的查询。他只适合存储一些较为简单的数据,对于需要进行复杂查询的数据,关系型数据库显得更为合适。
    (3)常见非关系型数据库:
    ①面向高性能并发读写的key-value数据库,key-value数据库的主要特点是具有极高的并发读写功能。例如:Redis,Takyo,Cabinet,Flare。
    ②面向海量数据访问的面向文档数据库:特点是可以在海量的数据库中快速的查询数据。例如:MongoDB,CouchDB。
    ③面向可扩展式的分布式数据库,可以解决传统数据库存在可扩展性上的缺陷,这类数据库可以适应数据量的增加以及数据结构的变化。
    4.SQL
    (1)通用语法:
    ①mysql数据库的SQL语句不区分大小写,关键字建议使用大写;
    ②单行注释:- -注释内容或#注释内容(mysql特有);
    多行注释:/*注释内容 */
    (2)SQL分类:
    ①DDL:数据定义语言,用来定义数据库对象(数据库,表,字段);
    ②DML:数据操作语言,用来对数据库表中的数据进行增删改;
    ③DQL:数据查询语言,用来查询数据库中表的记录;
    ④DCL:数据控制语言,用来创建数据库用户,控制数据库的访问权限。
    5.MySQL数据类型
    ①数值类型
    在这里插入图片描述②字符串类型
    在这里插入图片描述③日期时间类型
    在这里插入图片描述6.启动/停止MYSQL数据库:
    msql命令行:net start mysql; net stop mysql;
    cmd命令行:net start mysql80(注册到Windows中的mysql系统名称);net stop mysql;
    7.mysql连接:
    cmd命令行:mysql -u root -p
    此方式需要配置mysql的环境变量。

  • 相关阅读:
    【面试经典150 | 栈】最小栈
    Swift加载Lottie
    金九银十!2022BAT后端Java进阶面试快速指南宝典,秋招面试不背不行呀!!
    实战 - 在Linux上部署各类软件
    8.15 Day41---Linux文件系统命令
    百日筑基第五天-关于maven
    FPGA project : flash_secter_erase
    08-Linux特殊权限
    Python 中的模糊字符串匹配
    《循环双向链表》(带哨兵位的头节点)
  • 原文地址:https://blog.csdn.net/qq_43742813/article/details/126856705