当前位置: 首页 > 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 是…...

UE5 学习系列(二)用户操作界面及介绍

这篇博客是 UE5 学习系列博客的第二篇,在第一篇的基础上展开这篇内容。博客参考的 B 站视频资料和第一篇的链接如下: 【Note】:如果你已经完成安装等操作,可以只执行第一篇博客中 2. 新建一个空白游戏项目 章节操作,重…...

基于距离变化能量开销动态调整的WSN低功耗拓扑控制开销算法matlab仿真

目录 1.程序功能描述 2.测试软件版本以及运行结果展示 3.核心程序 4.算法仿真参数 5.算法理论概述 6.参考文献 7.完整程序 1.程序功能描述 通过动态调整节点通信的能量开销,平衡网络负载,延长WSN生命周期。具体通过建立基于距离的能量消耗模型&am…...

蓝桥杯 2024 15届国赛 A组 儿童节快乐

P10576 [蓝桥杯 2024 国 A] 儿童节快乐 题目描述 五彩斑斓的气球在蓝天下悠然飘荡,轻快的音乐在耳边持续回荡,小朋友们手牵着手一同畅快欢笑。在这样一片安乐祥和的氛围下,六一来了。 今天是六一儿童节,小蓝老师为了让大家在节…...

【ROS】Nav2源码之nav2_behavior_tree-行为树节点列表

1、行为树节点分类 在 Nav2(Navigation2)的行为树框架中,行为树节点插件按照功能分为 Action(动作节点)、Condition(条件节点)、Control(控制节点) 和 Decorator(装饰节点) 四类。 1.1 动作节点 Action 执行具体的机器人操作或任务,直接与硬件、传感器或外部系统…...

Linux-07 ubuntu 的 chrome 启动不了

文章目录 问题原因解决步骤一、卸载旧版chrome二、重新安装chorme三、启动不了,报错如下四、启动不了,解决如下 总结 问题原因 在应用中可以看到chrome,但是打不开(说明:原来的ubuntu系统出问题了,这个是备用的硬盘&a…...

多模态大语言模型arxiv论文略读(108)

CROME: Cross-Modal Adapters for Efficient Multimodal LLM ➡️ 论文标题:CROME: Cross-Modal Adapters for Efficient Multimodal LLM ➡️ 论文作者:Sayna Ebrahimi, Sercan O. Arik, Tejas Nama, Tomas Pfister ➡️ 研究机构: Google Cloud AI Re…...

Spring数据访问模块设计

前面我们已经完成了IoC和web模块的设计,聪明的码友立马就知道了,该到数据访问模块了,要不就这俩玩个6啊,查库势在必行,至此,它来了。 一、核心设计理念 1、痛点在哪 应用离不开数据(数据库、No…...

什么是Ansible Jinja2

理解 Ansible Jinja2 模板 Ansible 是一款功能强大的开源自动化工具,可让您无缝地管理和配置系统。Ansible 的一大亮点是它使用 Jinja2 模板,允许您根据变量数据动态生成文件、配置设置和脚本。本文将向您介绍 Ansible 中的 Jinja2 模板,并通…...

20个超级好用的 CSS 动画库

分享 20 个最佳 CSS 动画库。 它们中的大多数将生成纯 CSS 代码,而不需要任何外部库。 1.Animate.css 一个开箱即用型的跨浏览器动画库,可供你在项目中使用。 2.Magic Animations CSS3 一组简单的动画,可以包含在你的网页或应用项目中。 3.An…...

并发编程 - go版

1.并发编程基础概念 进程和线程 A. 进程是程序在操作系统中的一次执行过程,系统进行资源分配和调度的一个独立单位。B. 线程是进程的一个执行实体,是CPU调度和分派的基本单位,它是比进程更小的能独立运行的基本单位。C.一个进程可以创建和撤销多个线程;同一个进程中…...