|NO.Z.00084|——————————|LinuxNetwork|——|Linux&MySQL.V01|
一、什么是数据库
### --- 什么是数据库
~~~ #数据:
~~~ 描述事物的#符号记录,
~~~ 可以是数字/文字/图形/图像/声音/语言等,数据有多种形式,
~~~ 它们都可以经过数字化后存入计算机。
~~~ #数据库:
~~~ 存储数据的仓库,是长期存放在计算机内/有组织/可共享的大量数据的集合,
~~~ 数据库中的数据按照一定数据模型组织,描述和存储,
~~~ 具有较小的冗余度,较高的独立性和易扩展性,
### --- 并为各种用户共享,总结一下几点:
~~~ 数据结构化
~~~ 数据的共享性高,冗余度低,易扩展
~~~ 数据独立性高
~~~ 数据由DBMS统一管理和控制(安全性/完整性/并发控制/故障恢复)
~~~ #解释:
~~~ DBMS数据库管理系统(能够操作和管理数据库的大型软件)
二、数据库和文件系统的区别?

### --- 数据库和文件系统的区别?
~~~ # 文件系统:
~~~ 文件系统是操作系统用于明确存储设备(常见的是磁盘)或分区上的文件的方法和数据结构;
~~~ 即在存储设备上组织文件的方法,
~~~ 操作系统中管理和存储文件信息的软件机构称为文件管理系统,简称文件系统
~~~ # 数据库系统:
~~~ 数据库管理系统(Database Management System)
~~~ 是一种操纵和管理数据库的大型软件用于建立/使用/维护数据库,简称DBMS,
~~~ 它对数据进行统一的管理和控制,以保证数据库的安全性和完整性。
### --- 对比区别:
~~~ # 管理对象不同:
~~~ 文件系统的管理对象是文件,并非直接对数据进行管理,
~~~ 不同的数据结构需要使用不同的文件系统进行保存(
~~~ 举例:txt文件和doc文件不能通过修改文件名完成转换)而数据库对数据进行存储和管理
~~~ # 存储方式不同:
~~~ 文件系统使用不同的文件将数据分类(.doc/.mp4/.jpg)保存在外部存储上;
~~~ 数据库系统使用标准统一的数据类型进行数据保存(字母/数字/符号/时间)
~~~ # 调用数据的方式不同:
~~~ 文件系统使用不同的软件打开不同类型的文件;数据库系统由DBMS统一调用和管理。如下图:
### --- 优缺点总结:
~~~ 由于DBMS的存在,用户不再需要了解数据存储和其他市县的细节,
~~~ 直接通过DBMS就能获取数据,为数据的使用带来了极大便利。
~~~ 具有以数据为单位的共享性,具有数据的并发访问能力。
~~~ DBMS保证了在并发访问时数据的一致性。
~~~ 低延时访问,典型例子就是线下支付系统的应用,支付规模巨大的时候,
~~~ 数据库系统的表现远远优于文件系统
~~~ 能够较为频繁的对数据进行修改,在需要频繁修改数据的场景下,
~~~ 数据库系统可以依赖DBMS来对数据进行操作且对性能的消耗相对文件系统比较小
~~~ 对事务的支持,DBMS支持事务,即一系列对数据的操作集合要么都完成,要么都不完成,
~~~ 在DBMS上对数据的各种操作都是原子级的。‘
### --- 数据库系统
~~~ 表示层:数据库——数据表-记录(字段)
~~~ 逻辑层:数据库的存储引擎
~~~ 物理层:数据库文件(*.sql)——————————————————
### --- 文件系统 |
~~~ 表示层:文件名(文件类型.txt......)———————————
~~~ 逻辑层:文件系统类型(EXT4/NTFS/xfs)
~~~ 物理层:分区块(数据块data bloc)——>扇区
~~~ #能看的见的文件就是表示层
~~~ #数据库系统的物理层=文件系统的表示层
Walter Savage Landor:strove with none,for none was worth my strife.Nature I loved and, next to Nature, Art:I warm'd both hands before the fire of life.It sinks, and I am ready to depart
——W.S.Landor
分类:
cdv007-network
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通