目录
序言
一、什么是数据库?
二、DBMS 数据库管理系统(DataBase Management System)
三、数据库与文件系统的区别
四、数据库的发展和规划
五、常见数据库
5.1 关系型数据库
5.2 非关系型数据库
六、DBMS支持的数据模型
6.1 层次模型
6.2 网状模型
6.3 关系模型
6.4 面向对象模型(概念模型)
6.5 数据模型 (关系概念模型)
七、MySql的特征
获取方式:
序言
通过本篇文章你将对发数据库的概念拥有一个初步的了解,以及分清楚数据库与文件系统的区别,并认识常见的数据库和不同的数据模型。
一、什么是数据库?
数据:
描述事务的符号记录,包含但不限于数字、 文字、图形、图像、声音、语言等。数据有多重形式,它们都可以经过数字化后存入计算机。
数据库:数据仓库
是长期存放在计算机内、有组织、可共享的大量数据的集合。数据库中的数据按照一定数据模型组织、描述和存储,特征:较小的冗余度,较高的独立性和易扩展性。为迎合用户的使用和共享,于是它的特征有如下几点:
1、数据要具备结构化特征
2、数据的冗余度要小,共享性要高,扩充性要强
3、针对于原子性数据,独立性要强
4、数据要有统一的管理和控制
二、DBMS 数据库管理系统(DataBase Management System)
DBMS是所有数据的知识库,并对数据的存储、安全、一致性、并发操作、恢复和访问负责
数据库系统成熟的标志就是数据库管理系统的出现。归根结底它是管理数据库的一个软件,是对数据库完整和统一管理的控制机制。它不仅能够帮助我们轻松进行数据库的使用(登录,检索,维护),同时它也提供了数据的安全,完整,并发,容灾。为数据的恢复提供了可靠的保证。数据库管理系统的核心是一个用来存储大量数据的数据库。
DBMS内的数据字典(有时也被称为系统表),用于存储每个事物的相关信息,如名称,结构,位置,类型等等。这类数据也被称为元数据。
三、数据库与文件系统的区别
文件系统:
操作系统用于明确存储设备(通常泛指磁盘),或分区上的文件的方法和数据结构,即在存储设备上组织文件的方法。操作系统中负责管理和存储文件信息的软件机构称为文件管理系统,简称文件系统。
数据库系统:
数据库管理系统(Database Management System)是一种操纵和管理数据库的大型软件。用于建立、使用和维护数据库。对数据库进行统一的管理和控制,以保证数据库的安全性和完整性。
不同点:
1 管理对象不同;文件系统的管理对象是文件,并非直接对数据进行管理,不同的数据结构需要使用不同的文件类型进行保存,两者之间存在隔离性。
2 存储方式不同;文件系统使用不同的文件名加以区分(.doc/.mp4/.png),保存在外部存储设备上,数据库系统使用标准统一的数据类型进行数据保存(字母/数字/符号/时间....)
3 调用数据方式不同;文件系统使用不同的软件去调用不同类型的文件,数据库系统则统一使用DBMS进行调用和管理
四、数据库的发展和规划
初始阶段----人工管理:人工手动进行数据整理
萌芽阶段----文件系统:磁盘文件进行数据的存储
初级阶段----第一代数据库:网状模型和层次模型的数据库
中级阶段----第二代数据库:关系型数据库&&结构化查询语句 Oracle MySql SqlServer
高级阶段----新一代数据库:NoSql型数据库 Redis..MnGo..
未来阶段----云库
五、常见数据库
5.1 关系型数据库
关系模型就是指二维表格模型,因而一个关系型数据库就是由二维表及其之间的联系组成的一个数据组织。
当前主流的关系型数据库有Oracle、DB2、Microsoft SQL Server、MicrosoftAccess、MySQL、浪潮K-DB 、武汉达梦、南大通用、人大金仓等。
实体关系模型 E-R 图;它将真实世界事物与关系的概念,来解释 了数据库中抽象的数据架构。实体关系模型利用图形的方式(实体-关系图)来表示数据库的概念设计,有助于设计过程中的构思及沟通讨论。
5.2 非关系型数据库
普遍定义是“非关联性的”,强调key--value存储和访问。
六、DBMS支持的数据模型
6.1 层次模型
层次模型非常像一个倒置的树形结构。
层次模型满足如下的条件:
1,有且仅有一个节点且无父节点的,这个节点被称为根节点。
2,其他的节点,有且只有一个父节点。多应用于桌面型关系模型数据库。
6.2 网状模型
在现实世界中,事物之间的联系更多的是非层次关系的,用层次模型表示非树型结构是很不直接的,网状模型则可以克服这一弊病。网状模型是一个网络结构。
在数据库内如何区分网状模型,它满足的条件:
1,允许一个以上的节点无父节点
2,一个节点可以有多于一个的父节点
6.3 关系模型
以二维表的形式表示实体和实体之间存在的关系。
从模型的三要素角度分析,满足关系模型的条件:
1,数据结构:一个二维表格
2,数据操作:数据表的定义 维护 检索 计算
3,数据约束条件:数据表中列的限制
6.4 面向对象模型(概念模型)
基于客户的想法和观点所形成的认识和抽象
实体(Entity):客观存在,能够被描述的事物
属性(Attribute): 用于描述实体所具有的特征或特性。如针对学生实体 学号 姓名 年龄 性别等等
关系(Relationship):实体和实体之间的联系
一对一关系 eg:个人 和 身份证
一对多关系(多对一关系) eg: 班级 和 学生
多对多关系 eg:学生 和 课程
6.5 数据模型 (关系概念模型)
行和列:行代表一个具体的实体的数据。也叫一条记录。列是属性的映射,用于描述实体的。
七、MySql的特征
1.底层语言使用C、C++编写的。并且使用多种编译器进行测试,以确保源码的可移植性。
2.支持市面上所有的操作系统。
3.为编程语言提供了API,编程语言包含但不限于C、C++、C#、Delphi、Eiffel、Java、Perl、PHP、Python、Ruby和Tcl等。
4.支持多线程,充分利用CPU资源,支持多用户访问。
5.出色的Sql算法优化,能够更有效的提高查询效率。
6.除了常规的安装外,Mysql还能作为嵌入式嵌入在其他软件内。
7.提供了多语言支持。
8.提供了TCP/IP ODBC JDBC等多种数据库连接机制。
9.提供用于管理,检查,优化数据库操作的管理工具。
10.庞大的算法加持,可以轻松处理千万级别记录的内容。
获取方式:
四个版本
Alpha版:开发版,公司内部使用。
Beta版: 体验版,开发完成之后,供用户体验。
RC版: 候选班,正式版发布之前,诞生的小版本。
GA版: 正式发布版本。
MySql官方网站: MySQL
安装包 源码包 二进制包 发行光盘获取