数据库概述
1、文件系统弊端: 数据冗余和不一致性,数据格式相对独立,数据完整性和原子性,数据并发访问,数据的安全性问题。
(原子性):要么全执行成功,原数据改变。要么全执行失败,原数据不变。
(因为文件系统存在数据库没有的弊端,所以可用数据库存储数据)
2、数据库概念:
DBMS:数据库管理系统
数据模型:
层次模型:按照层次结构的形式组织数据库数据的模型 代表性产品 IMS
缺点:大量冗余数据
网状模型:按照网状结构的形式组织数据库数据的模型 代表性产品 DBTG
缺点:后期维护困难
关系模型:按照关系结构的形式组织数据库数据的模型(行和列,表)
RDBMS 关系式数据库管理系统 DBMS=RDBMS
3、关系: E-R模型
实体:数据对象 联系:一个或多个实体之间的关系 属性:实体的某一个特性
4、SQL语句:
结构化语言
1977年,System R的原型机 通过SQL管理关系式数据库
1979 甲骨文推出市场第一个关系式数据库产品ORACLE
1983年 IBM推出了关系型数据库 DB2
80年代推出SQL标准
5、SQL类型:
DML:数据操作语言,操作数据库中的数据。如select 、update
DDL:数据描述语言,用来建立数据库、定义数据关系,如 create 、drop
DCL:数据控制语言,用来控制数据库的权限组件。如 grant、revoke
6、数据结构:
文件的逻辑关系:
上层:文件
中层:文件系统
下层:磁盘中的数据块
数据库的逻辑关系:
上层:数据表
中层:存储引擎
下层:文件
为存储数据、管理数据、查询数据所建立的实现方法
7、MYSQL的存储引擎:(存储引擎:实现数据存储、管理、查询建立的机制)
MyISAM
特点:默认的数据库存储引擎 、较高插入、查询速度
不支持事务、行级锁以及外键约束等功能
事务:SQL语句的批处理,要么保持原样要么修改成功。
锁:表级锁 锁定某一整个表格 速度快,冲突多
行级锁 锁定一行 冲突少,速度慢
页面锁 锁定相邻的多行 表和行级锁的折中方案 速度较快,冲突较少
约束:预约束:限制每个数据的类型 约束用户的在特定的字段输入特定的值
外键约束:约束用户只能在外表上填写特定的值
InnoDB
支持事务、行级锁、外键约束等功能
Memory
只存在于存储器中,通常使用hash存储数 速度快
8、数据的存储和查询:
a、存储管理器
专用的存储组件,通过DDL来创建数据表的结构,再通过DML来保存SQL语句的处理结果
权限及完整性管理器:设置存储权限 ,保证用户是否有能把数据写入数据库的权限
事务管理器:提供事务的功能,保证文件的原子性
文件管理器:用来保存数据表和文件的对应关系
缓冲区管理器:管理缓冲空间
b、查询管理器
负责接收用户的查询请求、理解用户请求,并将结果交给存储管理器来真正实现数据管理
DDL、DML解释器 查询执行引擎
9、数据库的后台工作模式:
单进程多线程的工作模式:
守护线程:数据库后台默认执行不需要和用户进行交互的线程
应用线程:每一个用户请求分配一个应用线
10、数据库优化:
缓存 实现用户请求不需要每次都消耗系统资源
线程重用 用户退出后不撤销线程,继续分配给其他用户使用
存储器 是一种垂直扩展,企业不常用
mysql缺点: 不支持SMP(对称多处理器架构),它的操作方法是把大的sql语句给一个CPU处理,剩余CPU闲置,可能导致该CPU损坏 (解决方法:拆分表格、分区、读写分离等)
数据库的作用: 实现数据共享,数据实现集中控制,减少数据的冗余度,数据的一致性,故障恢复。
原创文章,作者:wz,如若转载,请注明出处:https://www.wzstyle.cn/258.html