当前位置: 首页 > news >正文

【MySQL】数据库介绍|数据库分类|MySQL的基本结构|MySQL初步认识|SQL分类

目录

数据库介绍

什么是数据库

数据库分类

1.关系型数据库(RDBMS):

 2.非关系型数据库:

MySQL要学啥

MySQL初步认识

SQL分类


💡推荐

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。【点击跳转到网站】


数据库介绍

什么是数据库

数据库,其实是一类软件,要做的事情,也是对数据进行高效的组织而且实现数据库软件的过程中,内部就会用到很多的数据结构的东西

数据库分类

数据库大体可以分为 关系型数据库非关系型数据库

1.关系型数据库(RDBMS):

是指采用了关系模型来组织数据的数据库。 简单来说,关系模型指的就是二维表格模型,而一个关系型数据库就是由二维表及其之间的联系所组成的一个数据组织,每一行都是一条数据,每一行都包含很多列,每个列还会有不同的类型

数据库中的所有数据,列数/类型/含义都要能够匹配

基于标准的SQL,只是内部一些实现有区别。常用的关系型数据库如:

(1)Oracle:甲骨文产品,适合大型项目,适用于做复杂的业务逻辑,如ERP、OA等企业信息系统。收费

(2) MySQL:属于甲骨文,不适合做复杂的业务。开源免费

(3) SQL Server:微软的产品,安装部署在windows server上,适用于中大型项目。收费

(4)SQLite:非常轻量级的数据库,整个只有1M左右大小的可执行程序,这个程序特别适合于一些配置比较低的设备进行使用,尤其是移动设备(手机)

 2.非关系型数据库:

 对于数据的格式上的要求比较松散,往往都是按照键值对/文档的形式来进行组织的,性能较关系型数据库更高,而且更适合在分布式的场景中使用

(了解)不规定基于SQL实现。现在更多是指NoSQL数据库,如:

(1)基于键值对(Key-Value):如 memcached、redis

(2)基于文档型:如 mongodb

(3)基于列族:如 Hbase

(4)基于图型:如 neo4j

 关系型数据库与非关系型数据库的 区别

关系型数据库非关系型数据库
使用SQL不强制要求,一般不基于SQL实现
事务支持支持不支持
复杂操作支持不支持
海量读写操作效率低效率高
基本结构基于表和列,结构固定灵活性比较高
使用场景业务方面的OLTP系统(联机事务处理)用于数据的缓存、或基于统计分析的OLAP系统(联机分析处理)

MySQL要学啥

1.SQL 语句的使用(编程语言

SQL本质上是一个"编程语言”,专门用来操作数据库的编程语言(和 Java,C++之类的画风上差别非常大)

SQL是各个数据库之间通用的,各种数据库使用的语言都是 SQL(结构化的查询语言)
熟悉了 SOL 各种数据库都可以很容易上手了

2.MySQL 内部的一些基础原理(常见面试题)

只是根据面试题,见招拆招的介绍一些原理,应付面试有余,但是不够系统

💡3.针对数据库进行编程

通过 Java 来操作数据库(这个过程中也是会用到 SQL)


MySQL初步认识

MySQL 是一个"客户端-服务器"结构的程序

(1)客户端(client)主动发起请求的一方

(2)服务器(server)被动接受请求的一方(本质上就是一台电脑,只是配置更高,性能更强)

(3)请求(request)客户端主动给服务器发的数据

(4)响应(response)服务器给客户端返回的数据

几个问题:

1.数据是在客户端这边存储的,还是服务器储的?

答:服务器.客户端仅仅是和用户之间交互的界面;服务器涉及到的各种数据都是在服务器这边存储的;用户想要增删改查某个数据,此时就会从客户端发起一个网络请求到服务器上,MySQL服务器就会解析这个请求,获取到用户的意图,执行对于的逻辑,完成实际的增删改查,并且把结果通过网络反馈给客户端,最值客户端再显示到界面上

2.服务器能否知道客户端啥时候给他发请求?(服务器的特点1:7*24h运行)

答:不能! 服务器是被动的一方

所以, 一个专业的服务器,往往要7*24 小时运行,来随时应付可能到达的客户端请求,但是实际上服务器并不能真的做到007这么稳定的,可能会出现异常情况导致服务中断,或者更新服务器版本,被迫停机重启. 这样就需要分布式做高可用的支持从而解决上述问题(也就是多搞几个机器),也叫做冗余:复制关键的组件和数据,以确保在出现故障时系统仍然可用

3.服务器是只给一个客户端提供服务嘛? 还是要给多个客户端提供服务?(服务器的特点2)

答:多个客户端,一般情况下都是一个服务器对应多个客户端,实际上也是有服务器给某个客户端提供专属服务的


SQL分类

1.DDL数据定义语言,用来维护存储数据的结构

        代表指令: create, drop, alter

2.DML数据操纵语言,用来对数据进行操作代表指令: insert,delete,update

        DML中又单独分了一个DQL,数据查询语言,代表指令: select

3.DCL数据控制语言,主要负责权限管理和事务

        代表指令: grant,revoke,commit

以上SQL我们主要会在后面学习DDL和DML的操作


拓展:计算机的组成部分

CPU(中央处理器),主板(一块大的电路板,cpu 要装在上面),内存,硬盘(存储数据的),电源,散热器,机箱,显卡(GPU 专门负责图形渲染相关的计算的(最贵的)),显示器,键盘 /鼠标 

内存 和 硬盘的概念辨析

简单理解:

内存就是电脑上的16GB/32G(其中部分空间系统无法使用,实际能用的是 15.4)

硬盘就是电脑上的C盘,D盘,E盘,硬盘有机械硬盘,固态硬盘,固态硬盘的速度比机械硬盘能快10倍,即使如此也远远比不上内存的速度

内存(RAM)存储空间比较小访问速度比较快成本更高(贵)易失的(断点上面的数据会丢失)
硬盘(外存)存储空间比较大访问速度比较慢(速度能差出好几个量级)成本更低(便宜)持久的(相对于内存而言)

 硬盘(外存)

外存是一个"统称”,硬盘是其中的典型代表,U盘,软盘,光盘...都属于外存,U盘非常类似于固态硬盘, 但是内部工艺是不同的, 存储空间/读写速度 远远低于 固态硬盘

显存、CPU 和GPU(显卡)

(1)CPU 和中央处理器:进行各种逻辑判断和算术运算,用的是:通用的运算芯片

(2)显卡 (GPU):专用计算芯片,专门用来计算图形图像

(3)显存:就可以理解成专门给显卡使用的内存,平时的内存都是给 CPU 使用的.为了不冲突一般会在显卡上单独焊上一些内存单元,专门给显卡使用;也有的显卡自己不带显存的,就需要从 cpu 这里分一些内存过来用了,这种通信方式,需要占据更多的主板的总线通信带宽,性能会更低一些

问:MySQL 数据库, 服务器这边要存储数据,存储在哪里?内存?硬盘?

答:MySQL 使用硬盘存储数据(1)空间大(2)持久化存储

万一当前要管理的数据特别多,硬盘都装不下了~~那就可以引入更多的机器每个机器存储整个数据集合中的一部分(分布式),在分布式系统中,为了能够更方便的提作数据,也延伸出了一系列的技术体系 =>大数据

Redis 则是把数据存储在内存中~~(特殊),其他数据库基本都是存储在硬盘

相关文章:

【MySQL】数据库介绍|数据库分类|MySQL的基本结构|MySQL初步认识|SQL分类

目录 数据库介绍 什么是数据库 数据库分类 1.关系型数据库(RDBMS): 2.非关系型数据库: MySQL要学啥 MySQL初步认识 SQL分类 💡推荐 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风…...

2024年6月11日 (周二) 叶子游戏新闻

万能嗅探: 实测 网页打开 某视频号、某音、某红薯、某站,可以做到无水印的视频和封面下载功能哦,具体玩法大家自行发挥吧。 WPS免登录一键修改器: 去除烦人的登录且能正常使用 日本一首部游戏《拼图世界》上架Steam 30年PS名作日本游戏厂商日本一的首部品…...

JavaSE----类和对象(中)

5. 对象的构造及初始化 5.1 如何初始化对象 通过前面知识点的学习知道,在Java方法内部定义一个局部变量时,必须要初始化,否则会编译失败。 public static void main(String[] args) {int a;System.out.println(a); }// Error:(26, 28) jav…...

STC8增强型单片机进阶开发--OLED显示器(SPI)

系列文章目录 提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加 例如:第一章 Python 机器学习入门之pandas的使用 提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目…...

在CSS中,可以使用 float 属性来设置元素浮动

在CSS中,可以使用float属性来设置元素浮动。float属性有三个值:left、right和none。 float: left;:将元素浮动到左侧。float: right;:将元素浮动到右侧。float: none;:取消元素的浮动(默认值)。…...

wordpress主题开发

科普一:wordpress 是一套用 php 这个语言写的CMS后台管理系统,即我们大家的 wordpress 网站后台是一样的,能体现我们网站外观不同的地方就在于wordpress主题(即皮肤),而这个主题的基本构成是 htmlcssjavasc…...

Elasticsearch 认证模拟题 - 17

这两道题目非常具有代表性,分别是跨集群复制和跨集群检索,需要相应的 许可 这里在虚拟机上搭建集群完成这两道题目,这里补充一下 elasticsearch 和 kibana 的配置文件 # elasticsearch.yml cluster.name: cluster2 node.name: cluster2-node…...

Swift 中更现代化的调试日志系统趣谈(一)

概述 昨天凌晨苹果刚刚发布了 WWDC2024 一系列新视频,这标志着苹果开发的一只脚已迈入人工智能(Apple Intelligence)的崭新时代。即便如此,我相信不少秃头码农们还在使用一些“远古简陋”的调试方法来剖析 2142 年的代码。 不过别担心,这一切将在小伙伴们学完本系列博文后…...

深入理解Java中的SPI机制

1. 简介 SPI(Service Provider Interface) 是Java提供的一种为服务框架提供服务实现的机制。它允许框架在运行时动态地发现服务的实现,从而实现模块化设计。在Java中,SPI机制主要用于解耦API和实现,使得应用程序可以在…...

2、python 基础学习总结

文章目录 一、python 标识符和变量命名规则1、python 标识符2 python 变量和变量命名规则 二、数据类型2.1 Numbers(数字类型)2.2 String(字符串类型)2.2.1 单引号、双引号、三引号字符串之间的区别2.2.2 转义字符 在这里插入图片…...

线程的状态!!!

NEW:(初始状态) 线程对象已经创建,但尚未启动。此时,线程还没有开始执行。 RUNNABLE:(运行状态) 线程已经启动并且正在运行,或者准备好运行,但可能由于其他线…...

Hsah碰撞(冲突)是什么?如何解决?

Hash冲突:两个不同的对象经过hash计算后得到的hash值相同,导致冲突。 解决方法: 1、开放地址法:在哈希表中寻找其他的空闲位置来存储冲突的元素。 2、拉链法:拉链法的基本思路是在每个哈希槽中存储一个链表。当发生…...

doc 和 docx 文件的区别

人不走空 🌈个人主页:人不走空 💖系列专栏:算法专题 ⏰诗词歌赋:斯是陋室,惟吾德馨 目录 🌈个人主页:人不走空 💖系列专栏:算法专题 ⏰诗词歌…...

泛微OA E9 浏览框显示的数据根据表单字段过滤

一、实现效果:如图所示,字段“物品名称”浏览框显示的数据根据“类型”字段进行过滤。 二、实现方法: 1、建模引擎-应用建模-浏览框-浏览框列表中单击“办公耗材”-“浏览框列表”-“操作”-“编辑” 2、sql语句中根据OA自带是示例增加where…...

AIGC涉及到的算法(一)

目录 1. 生成对抗网络(GAN) 2. 变分自编码器(VAE) 3. 扩散模型(Diffusion Model) 4. Transformer 模型 5. 自然语言处理算法(NLP) 6. 计算机视觉算法(CV) 7. 神经网络算法 8. 决策树算法 9. 遗传算法 10. 聚类算法 1. 生成对抗网络(GAN) 原理与应用:生成对…...

一种基于单片机的智能饮水机设计

随着人们生活水平的提高,对美好生活质量的追求也越来越高。饮 水机是人们日常生活不可或缺的,实现饮水机的智能化控制不但方便, 而且更加安全。本文提出一种基于单片机的智能饮水控制系统,通过传 感器实现对水温的监测&#xff0c…...

竞争性谈判和竞争性磋商的区别(电子化招采系统)

竞争性谈判和竞争性磋商在政府采购和项目采购中都是常用的方式,但它们在多个方面存在显著的区别,郑州信源数智化招采系统可满足各种招标和采购方式,结合多年招采系统研发和实施经验,对竞争性谈判和竞争性磋商的区别总结如下: 1、…...

STM32F413 STM32F423数据手册 中文版 STM32F413 STM32F423勘误手册英文版等文档

链接: https://pan.baidu.com/s/1AeYaoFb5Wurii6OM2ZlY2Q 提取码: a3tj 本文分享关于STM32F413 和STM32F423芯片的相关资料,主要资源如下图所示: 包含的文档有: STM32F40xxx and STM32F41xxx单片机编程手册 中文版 英文版 STM32F413xG 423…...

【Vue】——前端框架的基本使用

💻博主现有专栏: C51单片机(STC89C516),c语言,c,离散数学,算法设计与分析,数据结构,Python,Java基础,MySQL,linux&#xf…...

tmux-以脚本中的tmux命令为例解释常用tmux命令

SESSIONenv_monitor_hr_parking ----- 将会话名称env_monitor_hr_parking赋值给变量SESSION tmux new-session -s $SESSION -n runner -d ----- new-session 用于创建新的会话。-s $SESSION 是一个选项,其中 $SESSION 是你想要给你的新会话命名的名称。-n runner 是…...

(二)TensorRT-LLM | 模型导出(v0.20.0rc3)

0. 概述 上一节 对安装和使用有个基本介绍。根据这个 issue 的描述,后续 TensorRT-LLM 团队可能更专注于更新和维护 pytorch backend。但 tensorrt backend 作为先前一直开发的工作,其中包含了大量可以学习的地方。本文主要看看它导出模型的部分&#x…...

蓝牙 BLE 扫描面试题大全(2):进阶面试题与实战演练

前文覆盖了 BLE 扫描的基础概念与经典问题蓝牙 BLE 扫描面试题大全(1):从基础到实战的深度解析-CSDN博客,但实际面试中,企业更关注候选人对复杂场景的应对能力(如多设备并发扫描、低功耗与高发现率的平衡)和前沿技术的…...

如何在看板中有效管理突发紧急任务

在看板中有效管理突发紧急任务需要:设立专门的紧急任务通道、重新调整任务优先级、保持适度的WIP(Work-in-Progress)弹性、优化任务处理流程、提高团队应对突发情况的敏捷性。其中,设立专门的紧急任务通道尤为重要,这能…...

OpenLayers 分屏对比(地图联动)

注:当前使用的是 ol 5.3.0 版本,天地图使用的key请到天地图官网申请,并替换为自己的key 地图分屏对比在WebGIS开发中是很常见的功能,和卷帘图层不一样的是,分屏对比是在各个地图中添加相同或者不同的图层进行对比查看。…...

SiFli 52把Imagie图片,Font字体资源放在指定位置,编译成指定img.bin和font.bin的问题

分区配置 (ptab.json) img 属性介绍: img 属性指定分区存放的 image 名称,指定的 image 名称必须是当前工程生成的 binary 。 如果 binary 有多个文件,则以 proj_name:binary_name 格式指定文件名, proj_name 为工程 名&…...

Golang——6、指针和结构体

指针和结构体 1、指针1.1、指针地址和指针类型1.2、指针取值1.3、new和make 2、结构体2.1、type关键字的使用2.2、结构体的定义和初始化2.3、结构体方法和接收者2.4、给任意类型添加方法2.5、结构体的匿名字段2.6、嵌套结构体2.7、嵌套匿名结构体2.8、结构体的继承 3、结构体与…...

MacOS下Homebrew国内镜像加速指南(2025最新国内镜像加速)

macos brew国内镜像加速方法 brew install 加速formula.jws.json下载慢加速 🍺 最新版brew安装慢到怀疑人生?别怕,教你轻松起飞! 最近Homebrew更新至最新版,每次执行 brew 命令时都会自动从官方地址 https://formulae.…...

Bean 作用域有哪些?如何答出技术深度?

导语: Spring 面试绕不开 Bean 的作用域问题,这是面试官考察候选人对 Spring 框架理解深度的常见方式。本文将围绕“Spring 中的 Bean 作用域”展开,结合典型面试题及实战场景,帮你厘清重点,打破模板式回答&#xff0c…...

Golang——7、包与接口详解

包与接口详解 1、Golang包详解1.1、Golang中包的定义和介绍1.2、Golang包管理工具go mod1.3、Golang中自定义包1.4、Golang中使用第三包1.5、init函数 2、接口详解2.1、接口的定义2.2、空接口2.3、类型断言2.4、结构体值接收者和指针接收者实现接口的区别2.5、一个结构体实现多…...

Spring AI Chat Memory 实战指南:Local 与 JDBC 存储集成

一个面向 Java 开发者的 Sring-Ai 示例工程项目,该项目是一个 Spring AI 快速入门的样例工程项目,旨在通过一些小的案例展示 Spring AI 框架的核心功能和使用方法。 项目采用模块化设计,每个模块都专注于特定的功能领域,便于学习和…...