【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) 原理与应用:生成对…...

一种基于单片机的智能饮水机设计
随着人们生活水平的提高,对美好生活质量的追求也越来越高。饮 水机是人们日常生活不可或缺的,实现饮水机的智能化控制不但方便, 而且更加安全。本文提出一种基于单片机的智能饮水控制系统,通过传 感器实现对水温的监测,…...
竞争性谈判和竞争性磋商的区别(电子化招采系统)
竞争性谈判和竞争性磋商在政府采购和项目采购中都是常用的方式,但它们在多个方面存在显著的区别,郑州信源数智化招采系统可满足各种招标和采购方式,结合多年招采系统研发和实施经验,对竞争性谈判和竞争性磋商的区别总结如下: 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…...

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 是…...
[特殊字符] 智能合约中的数据是如何在区块链中保持一致的?
🧠 智能合约中的数据是如何在区块链中保持一致的? 为什么所有区块链节点都能得出相同结果?合约调用这么复杂,状态真能保持一致吗?本篇带你从底层视角理解“状态一致性”的真相。 一、智能合约的数据存储在哪里…...

stm32G473的flash模式是单bank还是双bank?
今天突然有人stm32G473的flash模式是单bank还是双bank?由于时间太久,我真忘记了。搜搜发现,还真有人和我一样。见下面的链接:https://shequ.stmicroelectronics.cn/forum.php?modviewthread&tid644563 根据STM32G4系列参考手…...

shell脚本--常见案例
1、自动备份文件或目录 2、批量重命名文件 3、查找并删除指定名称的文件: 4、批量删除文件 5、查找并替换文件内容 6、批量创建文件 7、创建文件夹并移动文件 8、在文件夹中查找文件...
大语言模型如何处理长文本?常用文本分割技术详解
为什么需要文本分割? 引言:为什么需要文本分割?一、基础文本分割方法1. 按段落分割(Paragraph Splitting)2. 按句子分割(Sentence Splitting)二、高级文本分割策略3. 重叠分割(Sliding Window)4. 递归分割(Recursive Splitting)三、生产级工具推荐5. 使用LangChain的…...
如何为服务器生成TLS证书
TLS(Transport Layer Security)证书是确保网络通信安全的重要手段,它通过加密技术保护传输的数据不被窃听和篡改。在服务器上配置TLS证书,可以使用户通过HTTPS协议安全地访问您的网站。本文将详细介绍如何在服务器上生成一个TLS证…...
反射获取方法和属性
Java反射获取方法 在Java中,反射(Reflection)是一种强大的机制,允许程序在运行时访问和操作类的内部属性和方法。通过反射,可以动态地创建对象、调用方法、改变属性值,这在很多Java框架中如Spring和Hiberna…...

EtherNet/IP转DeviceNet协议网关详解
一,设备主要功能 疆鸿智能JH-DVN-EIP本产品是自主研发的一款EtherNet/IP从站功能的通讯网关。该产品主要功能是连接DeviceNet总线和EtherNet/IP网络,本网关连接到EtherNet/IP总线中做为从站使用,连接到DeviceNet总线中做为从站使用。 在自动…...

mac 安装homebrew (nvm 及git)
mac 安装nvm 及git 万恶之源 mac 安装这些东西离不开Xcode。及homebrew 一、先说安装git步骤 通用: 方法一:使用 Homebrew 安装 Git(推荐) 步骤如下:打开终端(Terminal.app) 1.安装 Homebrew…...
tomcat入门
1 tomcat 是什么 apache开发的web服务器可以为java web程序提供运行环境tomcat是一款高效,稳定,易于使用的web服务器tomcathttp服务器Servlet服务器 2 tomcat 目录介绍 -bin #存放tomcat的脚本 -conf #存放tomcat的配置文件 ---catalina.policy #to…...

HubSpot推出与ChatGPT的深度集成引发兴奋与担忧
上周三,HubSpot宣布已构建与ChatGPT的深度集成,这一消息在HubSpot用户和营销技术观察者中引发了极大的兴奋,但同时也存在一些关于数据安全的担忧。 许多网络声音声称,这对SaaS应用程序和人工智能而言是一场范式转变。 但向任何技…...