文章目录

  • 一、数据库基本介绍
    • 1、数据库基本知识
    • 2、数据库分类
    • 3、关系型数据库
    • 4、非关系型数据库
    • 5、SQL基本介绍
    • 6、MySQL基本介绍
    • 7、MySQL访问
    • 8、总结

一、数据库基本介绍

目标:了解数据库的功能和常见数据库分类、数据库产品

  • 数据库基本知识
  • 数据库分类
  • SQL简介
  • MySQL访问

1、数据库基本知识

目标:了解数据库的概念和数据库的作用

数据库:database(DB),是一种存储数据的仓库

  • 数据库是根据数据结构组织、存储和管理数据
  • 数据库能够长期、高效的管理和存储数据
  • 数据库的目的就是能够存储(写)和提供(读)数据

2、数据库分类

目标:了解数据库的分类模式,以及分类的依据

数据库分类:根据数据库的架构和数据组织原理进行分类

1、早期根据数据库的组织数据的存储模型分类

  • 层次数据库:基于层次的数据结构(数据分层)
  • 网状数据库:基于网状的数据结构(数据网络)
  • 关系数据库:基于关系模型的数据结构(二维表)

2、现在较多根据实际数据管理模型分类(存储介质

  • 关系型数据库:基于关系模型的数据结构(二维表)通常存储在磁盘
  • 非关系型数据库:没有具体模型的数据结构(键值对)通常存储在内存

3、关系型数据库

目标:了解关系型数据库的模型逻辑,了解当前流行的关系型数据库产品

关系型数据库:是一种建立在关系模型上的数据库

  • 关系模型

    • 关系数据结构(存储)
    • 关系操作集合(操作)
    • 关系完整性约束(约束)
  • 关系型数据库存储在磁盘中(永久性存储)
  • 关系型数据库系统(DBS)模型有四层结构
    • 数据库管理系统(DBMS):管理系统运行(DataBase Management System)
    • 数据库(DB):数据存储的管理者(小管理,受DBMS管理)
    • 数据表(Table):数据关系管理者
    • 数据字段(Field):依赖于数据表,实际数据存储者
  • 关系型数据库产品
    • 大型:Oracle、DB2
    • 中型:MySQL、SqlServer
    • 小型:Sybase、Access
  • 索引
  1. 创建索引的目的:提高查询的效率
  2. 什么是索引:是一种数据结构,在MySQL中是一个”键”
  3. 工作原理:在MySQL中,存储引擎用类似的方法使用索引,其先在索引中查找对应的值,然后根据匹配的索引记录找到对应的数据行,最后将数据结果集返回给客户端。
  4. 类别
    (1)普通索引:提高查询效率针对表中的某列建立的索引
    (2)主键索引:在创建表格并指定主键时会自动创建,为了提高查询效率
    (3)唯一索引:创建索引的字段(列)取值是唯一的
    (4)外键索引:查询时会自动进行主外键的关联查询.外键的作用是保证数据的一致性和完整性
    (5)全文索引:主要用于文章的搜索,在搜索引擎中使用较多
  • 视图

    • 概念:是一张虚拟的表,数据来自于查询语句所涉及的表。使用时和真实的表相同,但是视图不会在数据库中进行存储
    • 作用:针对复杂的多表查询,为了简化SQL语句的编写,可以先建立视图
      然后用简单的查询语句去查询视图,就可以提高查询效率。
  • 事务

    • 什么是事务:在数据库中事务是工作的逻辑单元,一个事务是由一个或多个完成一组的相关行为的SQL语句组成,通过事务机制确保这一组SQL语句所作的操作要么完全成功执行,完成整个工作单元操作,要么一点也不执行。

    • 作用:确保数据库的完整性

    • 事务的特性(ACID):

        原子性(Atomicity)一致性(Consistency)隔离性(Isolation) 持久性(Durability)
      
    • 读锁(Read Lock):即共享锁。简单讲就是多个事务对同一数据进行共享一把锁,都能访问到数据,但是只能读不能修改。

    • 写锁(Write Lock):即排他锁。排他锁就是不能与其他所并存,如一个事务获取了一个数据行的排他锁,其他事务就不能再获取该行的其他锁,只有获取排他锁的事务可以对数据进行读取和修改。

    • 表级锁(Table Lock):最基本的锁策略,而且是开销最小的策略.表级锁一次会将整个表锁定,所可以很好的避免死锁问题

      - 锁定粒度大,锁冲突概率高、并发度低;
      - 好处是不会出现死锁、开销小、获取锁和释放锁的速度很快;
      - 使用表级锁定的主要是MyISAM,MEMORY,CSV等一些非事务性存储引擎,适用于以查询为主,少量更新的应用。
      
    • 行级锁(Row Lock):可以最大程度地支持并发处理,同时也带来了最大的锁开销

      - 好处是锁定对象的颗粒度很小,发生锁冲突的概率低、并发度高;
      - 缺点是开销大、加锁慢,行级锁容易发生死锁;
      - 使用行级锁定的主要是InnoDB存储引擎、及分布式存储引擎NDBCluster等。
      - 适用于对事务完整性要求较高的系统。InnoDB支持行级锁(row-level locking)和表级锁,默认为行级锁。
      
    • 死锁:是指两个或两个以上的进程在执行过程中,因争夺资源而造成的一种互相等待的现象,若无外力作用,它们都将无法推进下去。此时称系统处于死锁状态或系统产生了死锁,这些永远在互相等待的进程称为死锁进程。由于资源占用是互斥的,当某个进程提出申请资源后,使得有关进程在无外力协助下,永远分配不到必需的资源而无法继续运行,这就产生了一种特殊现象死锁。 一种情形,此时执行程序中两个或多个线程发生永久堵塞(等待),每个线程都在等待被其他线程占用并堵塞了的资源。例如,如果线程A锁住了记录1并等待记录2,而线程B锁住了记录2并等待记录1,这样两个线程就发生了死锁现象。计算机系统中,如果系统的资源分配策略不当,更常见的可能是程序员写的程序有错误等,则会导致进程因竞争资源不当而产生死锁的现象。锁有多种实现方式,比如意向锁,共享-排他锁,锁表,树形协议,时间戳协议等等。锁还有多种粒度,比如可以在表上加锁,也可以在记录上加锁。

    • 并发:并发控制是衡量一个数据库管理系统性能的重要指标之一。并发操作会为数据库带来不一致性。主要分为三方面:丢失修改,不可重复读,脏读问题。

4、非关系型数据库

目标:了解非关系型数据库的概念和一些主流产品

非关系型数据库:NoSQL(Not only SQL),不仅仅是关系型数据库

  • 所有不是关系型数据库的统称
  • 数据存储模型不是二维表,而是键值对(key->value
  • 存储的位置通常是内存(效率高)
  • 不能永久性存储(需要定时存到关系型数据库中)
  • 常见的非关系型数据库产品
    • MongoDB
    • Redis
    • Memcached

对比

NoSQL通常是与关系型数据库配合使用的,他们彼此是一种互补关系

  • NoSQL运行在内存,解决效率问题

    • I/O问题
    • 效率问题

很多时候,我们会发现系统中I/O累得要死,而CPU却在那里空闲等待,主要是由于I/O执行响应时间太长,处理读写的速度远远赶落后于CPU的处理速度,这时我们会尽可能的让操作放到内存中进行,由磁盘与CPU的关系,转变成内存与CPU的关系

  • MySQL运行在磁盘,解决稳定问题

    • 安全问题(永久存储)
    • 稳定

小结

1、NoSQL是对非关系型数据库的一类统称

  • NoSQL是不仅仅只是关系型数据库的意思

2、NoSQL通常运行在内存

  • 读取效率高
  • 并发访问高
  • 稳定性不高(断电即丢失)

3、NoSQL通常是键值对存储数据,访问也比较简单

5、SQL基本介绍

目标:了解SQL的作用和SQL的基本分类

SQL:Structured Query Language,结构化查询语言,是一种针对关系型数据库特殊标准化的编程语言

  • SQL是一种编程语言

  • 能够实现用户数据库查询程序设计

  • SQL语法要求

    • 可以单行或多行书写,以分号结束
    • 关键字不区分大小写,建议使用大写
  • SQL根据操作不同,分为几类

    • DQL:Data Query Language,数据查询语言,用于查询检索数据
    • DML:Data Manipulation Language,数据操作语言,用于数据的操作(增删改)
    • DDL:Data Definition Language,数据定义语言,用于创建数据结构
    • DCL:Data Control Language,数据控制语言,用于用户权限管理
    • TPL:Transaction Process Language,事务处理语言,辅助DML进行事务操作(因此也归属于DML)

小结

1、SQL虽然是编程语言,但是目前数据库通常只用来进行数据管理(逻辑部分给其他编程语言)

2、SQL虽然是针对关系型数据库的通用语言,但是不同的产品操作指令不完全通用

6、MySQL基本介绍

目标:了解MySQL产品的软件结构和访问原理

MySQL:是瑞典AB公司下的一款关系型数据库

  • MySQL当前属于甲骨文公司(AB->Sun->Oracle)
  • MySQL开源免费(部分存储引擎)
  • MySQL是一种C/S结构软件,因此需要MySQL的客户端来访问服务端(数据管理)
    • mysqld.exe:服务端
    • mysql.exe:客户端

C/S结构:Client/Server(客户机/服务器)结构是一种两层结构的系统:

  • MySQL使用SQL指令对数据库进行操作

  • MySQL的基本数据类型:

      int:整型double:小数、浮点型decimal:泛型类,可以代替整数或小数,但会造成小数的精度缺失char:固定长度字符串类型(当输入的长度不够时会补字符)varchar:固定长度字符串类型(当输入的长度不够时不会补字符)text:字符串类型(保存一篇文章)blob:字节类型data:日期类型,格式为yyyy-MM-ddtime:时间类型,合适为:hh:mm:sstimestamp:时间戳类型
    

访问原理

#mermaid-svg-eWSUnxNfBuZR7yWc .label{font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family);fill:#333;color:#333}#mermaid-svg-eWSUnxNfBuZR7yWc .label text{fill:#333}#mermaid-svg-eWSUnxNfBuZR7yWc .node rect,#mermaid-svg-eWSUnxNfBuZR7yWc .node circle,#mermaid-svg-eWSUnxNfBuZR7yWc .node ellipse,#mermaid-svg-eWSUnxNfBuZR7yWc .node polygon,#mermaid-svg-eWSUnxNfBuZR7yWc .node path{fill:#ECECFF;stroke:#9370db;stroke-width:1px}#mermaid-svg-eWSUnxNfBuZR7yWc .node .label{text-align:center;fill:#333}#mermaid-svg-eWSUnxNfBuZR7yWc .node.clickable{cursor:pointer}#mermaid-svg-eWSUnxNfBuZR7yWc .arrowheadPath{fill:#333}#mermaid-svg-eWSUnxNfBuZR7yWc .edgePath .path{stroke:#333;stroke-width:1.5px}#mermaid-svg-eWSUnxNfBuZR7yWc .flowchart-link{stroke:#333;fill:none}#mermaid-svg-eWSUnxNfBuZR7yWc .edgeLabel{background-color:#e8e8e8;text-align:center}#mermaid-svg-eWSUnxNfBuZR7yWc .edgeLabel rect{opacity:0.9}#mermaid-svg-eWSUnxNfBuZR7yWc .edgeLabel span{color:#333}#mermaid-svg-eWSUnxNfBuZR7yWc .cluster rect{fill:#ffffde;stroke:#aa3;stroke-width:1px}#mermaid-svg-eWSUnxNfBuZR7yWc .cluster text{fill:#333}#mermaid-svg-eWSUnxNfBuZR7yWc div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family);font-size:12px;background:#ffffde;border:1px solid #aa3;border-radius:2px;pointer-events:none;z-index:100}#mermaid-svg-eWSUnxNfBuZR7yWc .actor{stroke:#ccf;fill:#ECECFF}#mermaid-svg-eWSUnxNfBuZR7yWc text.actor>tspan{fill:#000;stroke:none}#mermaid-svg-eWSUnxNfBuZR7yWc .actor-line{stroke:grey}#mermaid-svg-eWSUnxNfBuZR7yWc .messageLine0{stroke-width:1.5;stroke-dasharray:none;stroke:#333}#mermaid-svg-eWSUnxNfBuZR7yWc .messageLine1{stroke-width:1.5;stroke-dasharray:2, 2;stroke:#333}#mermaid-svg-eWSUnxNfBuZR7yWc #arrowhead path{fill:#333;stroke:#333}#mermaid-svg-eWSUnxNfBuZR7yWc .sequenceNumber{fill:#fff}#mermaid-svg-eWSUnxNfBuZR7yWc #sequencenumber{fill:#333}#mermaid-svg-eWSUnxNfBuZR7yWc #crosshead path{fill:#333;stroke:#333}#mermaid-svg-eWSUnxNfBuZR7yWc .messageText{fill:#333;stroke:#333}#mermaid-svg-eWSUnxNfBuZR7yWc .labelBox{stroke:#ccf;fill:#ECECFF}#mermaid-svg-eWSUnxNfBuZR7yWc .labelText,#mermaid-svg-eWSUnxNfBuZR7yWc .labelText>tspan{fill:#000;stroke:none}#mermaid-svg-eWSUnxNfBuZR7yWc .loopText,#mermaid-svg-eWSUnxNfBuZR7yWc .loopText>tspan{fill:#000;stroke:none}#mermaid-svg-eWSUnxNfBuZR7yWc .loopLine{stroke-width:2px;stroke-dasharray:2, 2;stroke:#ccf;fill:#ccf}#mermaid-svg-eWSUnxNfBuZR7yWc .note{stroke:#aa3;fill:#fff5ad}#mermaid-svg-eWSUnxNfBuZR7yWc .noteText,#mermaid-svg-eWSUnxNfBuZR7yWc .noteText>tspan{fill:#000;stroke:none}#mermaid-svg-eWSUnxNfBuZR7yWc .activation0{fill:#f4f4f4;stroke:#666}#mermaid-svg-eWSUnxNfBuZR7yWc .activation1{fill:#f4f4f4;stroke:#666}#mermaid-svg-eWSUnxNfBuZR7yWc .activation2{fill:#f4f4f4;stroke:#666}#mermaid-svg-eWSUnxNfBuZR7yWc .mermaid-main-font{font-family:"trebuchet ms", verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-eWSUnxNfBuZR7yWc .section{stroke:none;opacity:0.2}#mermaid-svg-eWSUnxNfBuZR7yWc .section0{fill:rgba(102,102,255,0.49)}#mermaid-svg-eWSUnxNfBuZR7yWc .section2{fill:#fff400}#mermaid-svg-eWSUnxNfBuZR7yWc .section1,#mermaid-svg-eWSUnxNfBuZR7yWc .section3{fill:#fff;opacity:0.2}#mermaid-svg-eWSUnxNfBuZR7yWc .sectionTitle0{fill:#333}#mermaid-svg-eWSUnxNfBuZR7yWc .sectionTitle1{fill:#333}#mermaid-svg-eWSUnxNfBuZR7yWc .sectionTitle2{fill:#333}#mermaid-svg-eWSUnxNfBuZR7yWc .sectionTitle3{fill:#333}#mermaid-svg-eWSUnxNfBuZR7yWc .sectionTitle{text-anchor:start;font-size:11px;text-height:14px;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-eWSUnxNfBuZR7yWc .grid .tick{stroke:#d3d3d3;opacity:0.8;shape-rendering:crispEdges}#mermaid-svg-eWSUnxNfBuZR7yWc .grid .tick text{font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-eWSUnxNfBuZR7yWc .grid path{stroke-width:0}#mermaid-svg-eWSUnxNfBuZR7yWc .today{fill:none;stroke:red;stroke-width:2px}#mermaid-svg-eWSUnxNfBuZR7yWc .task{stroke-width:2}#mermaid-svg-eWSUnxNfBuZR7yWc .taskText{text-anchor:middle;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-eWSUnxNfBuZR7yWc .taskText:not([font-size]){font-size:11px}#mermaid-svg-eWSUnxNfBuZR7yWc .taskTextOutsideRight{fill:#000;text-anchor:start;font-size:11px;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-eWSUnxNfBuZR7yWc .taskTextOutsideLeft{fill:#000;text-anchor:end;font-size:11px}#mermaid-svg-eWSUnxNfBuZR7yWc .task.clickable{cursor:pointer}#mermaid-svg-eWSUnxNfBuZR7yWc .taskText.clickable{cursor:pointer;fill:#003163 !important;font-weight:bold}#mermaid-svg-eWSUnxNfBuZR7yWc .taskTextOutsideLeft.clickable{cursor:pointer;fill:#003163 !important;font-weight:bold}#mermaid-svg-eWSUnxNfBuZR7yWc .taskTextOutsideRight.clickable{cursor:pointer;fill:#003163 !important;font-weight:bold}#mermaid-svg-eWSUnxNfBuZR7yWc .taskText0,#mermaid-svg-eWSUnxNfBuZR7yWc .taskText1,#mermaid-svg-eWSUnxNfBuZR7yWc .taskText2,#mermaid-svg-eWSUnxNfBuZR7yWc .taskText3{fill:#fff}#mermaid-svg-eWSUnxNfBuZR7yWc .task0,#mermaid-svg-eWSUnxNfBuZR7yWc .task1,#mermaid-svg-eWSUnxNfBuZR7yWc .task2,#mermaid-svg-eWSUnxNfBuZR7yWc .task3{fill:#8a90dd;stroke:#534fbc}#mermaid-svg-eWSUnxNfBuZR7yWc .taskTextOutside0,#mermaid-svg-eWSUnxNfBuZR7yWc .taskTextOutside2{fill:#000}#mermaid-svg-eWSUnxNfBuZR7yWc .taskTextOutside1,#mermaid-svg-eWSUnxNfBuZR7yWc .taskTextOutside3{fill:#000}#mermaid-svg-eWSUnxNfBuZR7yWc .active0,#mermaid-svg-eWSUnxNfBuZR7yWc .active1,#mermaid-svg-eWSUnxNfBuZR7yWc .active2,#mermaid-svg-eWSUnxNfBuZR7yWc .active3{fill:#bfc7ff;stroke:#534fbc}#mermaid-svg-eWSUnxNfBuZR7yWc .activeText0,#mermaid-svg-eWSUnxNfBuZR7yWc .activeText1,#mermaid-svg-eWSUnxNfBuZR7yWc .activeText2,#mermaid-svg-eWSUnxNfBuZR7yWc .activeText3{fill:#000 !important}#mermaid-svg-eWSUnxNfBuZR7yWc .done0,#mermaid-svg-eWSUnxNfBuZR7yWc .done1,#mermaid-svg-eWSUnxNfBuZR7yWc .done2,#mermaid-svg-eWSUnxNfBuZR7yWc .done3{stroke:grey;fill:#d3d3d3;stroke-width:2}#mermaid-svg-eWSUnxNfBuZR7yWc .doneText0,#mermaid-svg-eWSUnxNfBuZR7yWc .doneText1,#mermaid-svg-eWSUnxNfBuZR7yWc .doneText2,#mermaid-svg-eWSUnxNfBuZR7yWc .doneText3{fill:#000 !important}#mermaid-svg-eWSUnxNfBuZR7yWc .crit0,#mermaid-svg-eWSUnxNfBuZR7yWc .crit1,#mermaid-svg-eWSUnxNfBuZR7yWc .crit2,#mermaid-svg-eWSUnxNfBuZR7yWc .crit3{stroke:#f88;fill:red;stroke-width:2}#mermaid-svg-eWSUnxNfBuZR7yWc .activeCrit0,#mermaid-svg-eWSUnxNfBuZR7yWc .activeCrit1,#mermaid-svg-eWSUnxNfBuZR7yWc .activeCrit2,#mermaid-svg-eWSUnxNfBuZR7yWc .activeCrit3{stroke:#f88;fill:#bfc7ff;stroke-width:2}#mermaid-svg-eWSUnxNfBuZR7yWc .doneCrit0,#mermaid-svg-eWSUnxNfBuZR7yWc .doneCrit1,#mermaid-svg-eWSUnxNfBuZR7yWc .doneCrit2,#mermaid-svg-eWSUnxNfBuZR7yWc .doneCrit3{stroke:#f88;fill:#d3d3d3;stroke-width:2;cursor:pointer;shape-rendering:crispEdges}#mermaid-svg-eWSUnxNfBuZR7yWc .milestone{transform:rotate(45deg) scale(0.8, 0.8)}#mermaid-svg-eWSUnxNfBuZR7yWc .milestoneText{font-style:italic}#mermaid-svg-eWSUnxNfBuZR7yWc .doneCritText0,#mermaid-svg-eWSUnxNfBuZR7yWc .doneCritText1,#mermaid-svg-eWSUnxNfBuZR7yWc .doneCritText2,#mermaid-svg-eWSUnxNfBuZR7yWc .doneCritText3{fill:#000 !important}#mermaid-svg-eWSUnxNfBuZR7yWc .activeCritText0,#mermaid-svg-eWSUnxNfBuZR7yWc .activeCritText1,#mermaid-svg-eWSUnxNfBuZR7yWc .activeCritText2,#mermaid-svg-eWSUnxNfBuZR7yWc .activeCritText3{fill:#000 !important}#mermaid-svg-eWSUnxNfBuZR7yWc .titleText{text-anchor:middle;font-size:18px;fill:#000;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-eWSUnxNfBuZR7yWc g.classGroup text{fill:#9370db;stroke:none;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family);font-size:10px}#mermaid-svg-eWSUnxNfBuZR7yWc g.classGroup text .title{font-weight:bolder}#mermaid-svg-eWSUnxNfBuZR7yWc g.clickable{cursor:pointer}#mermaid-svg-eWSUnxNfBuZR7yWc g.classGroup rect{fill:#ECECFF;stroke:#9370db}#mermaid-svg-eWSUnxNfBuZR7yWc g.classGroup line{stroke:#9370db;stroke-width:1}#mermaid-svg-eWSUnxNfBuZR7yWc .classLabel .box{stroke:none;stroke-width:0;fill:#ECECFF;opacity:0.5}#mermaid-svg-eWSUnxNfBuZR7yWc .classLabel .label{fill:#9370db;font-size:10px}#mermaid-svg-eWSUnxNfBuZR7yWc .relation{stroke:#9370db;stroke-width:1;fill:none}#mermaid-svg-eWSUnxNfBuZR7yWc .dashed-line{stroke-dasharray:3}#mermaid-svg-eWSUnxNfBuZR7yWc #compositionStart{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-eWSUnxNfBuZR7yWc #compositionEnd{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-eWSUnxNfBuZR7yWc #aggregationStart{fill:#ECECFF;stroke:#9370db;stroke-width:1}#mermaid-svg-eWSUnxNfBuZR7yWc #aggregationEnd{fill:#ECECFF;stroke:#9370db;stroke-width:1}#mermaid-svg-eWSUnxNfBuZR7yWc #dependencyStart{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-eWSUnxNfBuZR7yWc #dependencyEnd{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-eWSUnxNfBuZR7yWc #extensionStart{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-eWSUnxNfBuZR7yWc #extensionEnd{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-eWSUnxNfBuZR7yWc .commit-id,#mermaid-svg-eWSUnxNfBuZR7yWc .commit-msg,#mermaid-svg-eWSUnxNfBuZR7yWc .branch-label{fill:lightgrey;color:lightgrey;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-eWSUnxNfBuZR7yWc .pieTitleText{text-anchor:middle;font-size:25px;fill:#000;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-eWSUnxNfBuZR7yWc .slice{font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-eWSUnxNfBuZR7yWc g.stateGroup text{fill:#9370db;stroke:none;font-size:10px;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-eWSUnxNfBuZR7yWc g.stateGroup text{fill:#9370db;fill:#333;stroke:none;font-size:10px}#mermaid-svg-eWSUnxNfBuZR7yWc g.statediagram-cluster .cluster-label text{fill:#333}#mermaid-svg-eWSUnxNfBuZR7yWc g.stateGroup .state-title{font-weight:bolder;fill:#000}#mermaid-svg-eWSUnxNfBuZR7yWc g.stateGroup rect{fill:#ECECFF;stroke:#9370db}#mermaid-svg-eWSUnxNfBuZR7yWc g.stateGroup line{stroke:#9370db;stroke-width:1}#mermaid-svg-eWSUnxNfBuZR7yWc .transition{stroke:#9370db;stroke-width:1;fill:none}#mermaid-svg-eWSUnxNfBuZR7yWc .stateGroup .composit{fill:white;border-bottom:1px}#mermaid-svg-eWSUnxNfBuZR7yWc .stateGroup .alt-composit{fill:#e0e0e0;border-bottom:1px}#mermaid-svg-eWSUnxNfBuZR7yWc .state-note{stroke:#aa3;fill:#fff5ad}#mermaid-svg-eWSUnxNfBuZR7yWc .state-note text{fill:black;stroke:none;font-size:10px}#mermaid-svg-eWSUnxNfBuZR7yWc .stateLabel .box{stroke:none;stroke-width:0;fill:#ECECFF;opacity:0.7}#mermaid-svg-eWSUnxNfBuZR7yWc .edgeLabel text{fill:#333}#mermaid-svg-eWSUnxNfBuZR7yWc .stateLabel text{fill:#000;font-size:10px;font-weight:bold;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-eWSUnxNfBuZR7yWc .node circle.state-start{fill:black;stroke:black}#mermaid-svg-eWSUnxNfBuZR7yWc .node circle.state-end{fill:black;stroke:white;stroke-width:1.5}#mermaid-svg-eWSUnxNfBuZR7yWc #statediagram-barbEnd{fill:#9370db}#mermaid-svg-eWSUnxNfBuZR7yWc .statediagram-cluster rect{fill:#ECECFF;stroke:#9370db;stroke-width:1px}#mermaid-svg-eWSUnxNfBuZR7yWc .statediagram-cluster rect.outer{rx:5px;ry:5px}#mermaid-svg-eWSUnxNfBuZR7yWc .statediagram-state .divider{stroke:#9370db}#mermaid-svg-eWSUnxNfBuZR7yWc .statediagram-state .title-state{rx:5px;ry:5px}#mermaid-svg-eWSUnxNfBuZR7yWc .statediagram-cluster.statediagram-cluster .inner{fill:white}#mermaid-svg-eWSUnxNfBuZR7yWc .statediagram-cluster.statediagram-cluster-alt .inner{fill:#e0e0e0}#mermaid-svg-eWSUnxNfBuZR7yWc .statediagram-cluster .inner{rx:0;ry:0}#mermaid-svg-eWSUnxNfBuZR7yWc .statediagram-state rect.basic{rx:5px;ry:5px}#mermaid-svg-eWSUnxNfBuZR7yWc .statediagram-state rect.divider{stroke-dasharray:10,10;fill:#efefef}#mermaid-svg-eWSUnxNfBuZR7yWc .note-edge{stroke-dasharray:5}#mermaid-svg-eWSUnxNfBuZR7yWc .statediagram-note rect{fill:#fff5ad;stroke:#aa3;stroke-width:1px;rx:0;ry:0}:root{--mermaid-font-family: '"trebuchet ms", verdana, arial';--mermaid-font-family: "Comic Sans MS", "Comic Sans", cursive}#mermaid-svg-eWSUnxNfBuZR7yWc .error-icon{fill:#522}#mermaid-svg-eWSUnxNfBuZR7yWc .error-text{fill:#522;stroke:#522}#mermaid-svg-eWSUnxNfBuZR7yWc .edge-thickness-normal{stroke-width:2px}#mermaid-svg-eWSUnxNfBuZR7yWc .edge-thickness-thick{stroke-width:3.5px}#mermaid-svg-eWSUnxNfBuZR7yWc .edge-pattern-solid{stroke-dasharray:0}#mermaid-svg-eWSUnxNfBuZR7yWc .edge-pattern-dashed{stroke-dasharray:3}#mermaid-svg-eWSUnxNfBuZR7yWc .edge-pattern-dotted{stroke-dasharray:2}#mermaid-svg-eWSUnxNfBuZR7yWc .marker{fill:#333}#mermaid-svg-eWSUnxNfBuZR7yWc .marker.cross{stroke:#333}:root { --mermaid-font-family: "trebuchet ms", verdana, arial;} #mermaid-svg-eWSUnxNfBuZR7yWc {color: rgba(0, 0, 0, 0.75);font: ;}

MySQL客户端
寻找服务端
host寻找
寻找服务端
Port寻找
验证身份
username判定
password判定
服务端

小结

1、MySQL是一款流行的关系型数据库

2、MySQL是一款C/S结构的软件,需要客户端访问服务端

3、MySQL是基于SQL指令进行管理操作

7、MySQL访问

目标:掌握MySQL客户端访问服务端的基本操作,了解MySQL退出意义和操作

MySQL访问:就是客户端连接上服务端,然后实现数据操作的过程

  • 客户端访问服务端

    • 利用Windows控制台访问(MySQL客户端
    • 利用数据库管理工具(Navicat
  • 客户端需要连接认证

    • -h:主机地址(本机localhost可以省略)
    • -P:端口号(默认3306可以省略)
    • -u:用户名
    • -p:用户密码
  • 客户端连接上服务端就表示占用了一个资源,可以进行对应权限的操作

    • MySQL数据库连接资源有限:单个服务器最多16384
    • 连接资源不够了其他访问就需要排队等待
    • 用完尽可能释放资源
  • 客户端退出服务端

    • \q
    • quit
    • exit

步骤

1、打开客户端(CMD控制台):mysql.exe

2、输入服务器信息(连接)和用户信息(验证)

3、执行SQL操作

4、断开连接

小结

1、MySQL需要通过客户端来进行服务端访问

  • 自带客户端mysql.exe:Windows下借助CMD
  • 数据库管理工具:Navicat,图形化管理
  • 支持MySQL扩展的编程语言:PHPJava

2、数据库操作需要进行连接认证

  • 主机地址:-h,默认localhost可省略
  • 端口:-P(大写字母),默认3306可省略
  • 用户名:-u
  • 密码:-p(小写字母)

3、数据库连接资源有限,用完即关闭

8、总结

1、数据库的作用:高效的存储和管理数据,为编程语言提供数据支撑

2、当前市面上数据库的分类主要为两类

  • 关系型数据库:注重结构和数据存储的持久性
  • 非关系型数据库:注重数据读取的效率

3、关系型数据库是几乎所有网站都会使用到的,必须掌握其概念

4、所有关系型数据库是基于SQL进行数据的操作,MySQL数据库也是(不同的数据库产品对应的SQL指令可能有细微差别)

5、MySQL是一种C/S结构的软件,所以访问者必须通过客户端进行访问

  • 客户端与服务端通常不会在一台电脑上
  • 客户端访问服务端需要寻址、授权(-hPup)
  • MySQL服务端的连接数是有限的,时刻注意用完就销毁(减少资源无效占用)

数据库、MySQL基本知识相关推荐

  1. [数据库] MySQL基础知识之日期判断及添加排序序号

    这篇文章主要记录MySQL中遇到的几个基础问题,希望文章对你有所帮助!包括:         1.日期类型的判断         2.decode函数的替代方法         3.查询语句中添加一个 ...

  2. 2.MySQL 基础知识

    文章目录 MySQL 基础知识 知识点一 : MySQL命令行常用命令 知识点二 : 持久化 相关概念 知识点三 : 数据库 相关概念 知识点四 : DB 和 DBMS 关系图示 知识点五 : MyS ...

  3. [python学习] 专题九.Mysql数据库编程基础知识

    在Python网络爬虫中,通常是通过TXT纯文本方式存储,其实也是可以存储在数据库中的:同时在WAMP(Windows.Apache.MySQL.PHP或Python)开发网站中,也可以通过Pytho ...

  4. 2. Mysql数据库的入门知识

    2. Mysql数据库的入门知识 (1)打开Windows系统提供的服务查看相应的服务. (2)在Windows任务管理器的进程中查看 (3)使用命令行管理windows的Mysql数据库服务. Ne ...

  5. mysql数据库python基础知识_python学习之Mysql数据库编程基础知识介绍

    在Python网络爬虫中,通常是通过TXT纯文本方式存储,其实也是可以存储在数据库中的:同时在WAMP(Windows.Apache.MySQL.PHP或Python)开发网站中,也可以通过Pytho ...

  6. 数据库入门理论知识介绍以及编译安装MySql

    数据库入门理论知识介绍以及编译安装MySql 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 前言: 1.目前90%以上的公司面临的运维的瓶颈都在后端 最常见的2大瓶颈就是: 1&g ...

  7. 机构数据分析培训之关于Mysql定义及数据库相关小知识

    机构数据分析培训之关于Mysql定义及数据库相关小知识 一.关于Mysql定义 MySQL是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度 ...

  8. mysql数据库relay_MySQL 数据库主从复制小知识

    1.主从状态查看 mysql> SHOW SLAVE STATUS\G *************************** 1. row ************************** ...

  9. 三篇学会MySQL数据库【基础知识】

    MySQL万字教程,从入门到精通,争取三篇拿下MySQL初级知识,加油 ⛽ 我们终其一生不是为了迎合每个人,而是要找和我们共振的那部分人,这世界很喧嚣,做好你自己就好 MySQL文章目录 1. 基本操 ...

最新文章

  1. Linux系统gdb工具使用,使用 GDB 工具调试 Go
  2. UA STAT687 线性模型理论I 线性模型概述
  3. 市面上常见arduino版本比较
  4. mfc中点击关闭按钮时删除指定文件
  5. Feature flag,一个让软件发布轻松不掉发的神技
  6. AGG第四十二课 Blitting an image over another with transparency
  7. asp:get请求写法
  8. 基于matlab人脸识别论文,基于MATLAB的人脸识别系统的设计
  9. sdk的安装与环境配置
  10. 北邮 形式语言与自动机
  11. python软件长什么样子图片_使用Python把多个图片拼接成为长图
  12. 【二维前缀和】小白月赛-秘法地震
  13. 常用计算机的储存设备有哪些,【好物榜单】常用数据存储设备推荐
  14. Infor SyteLine ERP 客户端使用设置
  15. Java面试知识学习(持续更新)
  16. 新产品Digi XBee RR无线模块迁移指南
  17. [mapbox] 基础
  18. Android 文件下载中文名乱码的解决办法
  19. IDEA 各种疑难杂症
  20. 数仓搭建——DWD层

热门文章

  1. Java实例——Java方法
  2. C++中getline()、gets()等函数的用法
  3. PHP 换行符的一些说明
  4. 简单爬虫,爬取天猫商品信息
  5. 华擎计算机主板型号,华擎科技 新闻中心
  6. 北京华虹正式加入CPChain行业节点
  7. 点击刷新按钮实现listview的数据刷新
  8. C语言BCC异或效验
  9. ST官网下载STM32固件库
  10. Linux 的chmod权限数字777、755、644代表什么?