在目前阶段,存储和管理数据都离不开数据库。例如,学校需要使用数据库来存储学生和教师的信息;公司需要使用数据库来存储公司的资料和员工的信息。当数据存储到数据库后,数据库管理系统就会对这些数据进行组织和管理。
> 数据库管理系统(DBMS)是数据库的核心软件之一,是位于用户与操作系统之间的数据管理软件,用于建立,使用和维护数据库。
数据管理就是对各种数据进行分类、组织、编码、查询和维护,主要经历了 3 个阶段,即人工管理阶段、文件系统阶段和数据库系统阶段。每一个阶段都是以减小数据冗余、增强数据独立性和方便操作数据为目的进行发展。
> 数据冗余是指数据之间的重复,也可以说是同一数据存储在不同数据文件中的现象。
#### 1. 人工管理阶段
在计算机出现之前,人们主要利用纸张和计算工具(如算盘和计算尺)来进行数据的记录和计算,依靠大脑来管理和利用数据。
到了 20 世纪 50 年代中期, 这时计算机刚刚开始萌芽,还没有类似于磁盘等专门管理数据的存储设备,只有纸带、卡片、磁带等外存。所以计算机只能局限于科学技术方面,主要用于科学计算。
也就是说,在人工管理阶段,数据主要存储在纸带、磁带等介质上,或者直接通过手工来记录。
人工管理阶段的特点如下:
* 数据不能长期保存
* 不便于查询数据
* 数据不能共享,冗余度大
* 数据不具有独立性
#### 2. 文件系统阶段
在 20 世纪 50 年代后期到 20 世纪 60 年代中期,计算机中的磁盘和磁鼓等直接存取设备开始普及。这时,可以将数据存储在计算机的磁盘上。这些数据都以文件的形式存储,然后通过文件系统来管理这些文件。
图 1 是 Windows 下的文件系统。
![](http://h.yiniuedu.com/ffe623b9d38b56811b556c60d1635c58)
图 1 Windows 的文件系统
图 1 中有很多文件夹,每个文件夹里又有很多文件,这就是文件系统。文件系统通过文件的存储路径和文件名来访问文件中的数据,我们可以查看、修改、添加和删除这些文件。
相对于人工管理阶段而言,文件系统使数据管理变得简单,不用再为了一个文件而翻箱倒柜的查找。但是,这些文件中的数据没有进行结构化管理,查询起来还是不方便。
文件系统阶段的特点如下:
* 数据可以长期保存
* 数据由文件系统来管理
* 数据冗余大,共享性差
* 数据独立性差
* 无法应对突发事故(文件误删,磁盘故障等)
#### 3. 数据库系统阶段
在 20 世纪 60 年代后期,随着网络技术的发展,计算机软/硬件的进步,出现了数据库技术,该阶段就是所谓的数据库系统阶段。
数据库系统阶段使用专门的数据库来管理数据,用户可以在数据库系统中建立数据库,然后在数据库中建立表,最后将数据存储在这些表中。用户可以直接通过数据库管理系统来查询表中的数据。
相对于文件系统来说,数据库系统实现了数据结构化。在文件系统中,独立文件内部的数据一般是有结构的,但文件之间不存在联系,因此整体来说是没有结构的。 数据库系统虽然也常常分成许多单独的数据文件,但是它更注意同一数据库中各数据文件之间的相互联系。
数据库系统阶段的特点如下:
* 数据由数据库管理系统统一管理和控制
* 数据共享性高,冗余度低
* 数据独立性强
* 数据粒度小
> 数据粒度是数据库中数据的细化程度。细化程度越高,粒度越小;细化程度越低,粒度越大。
数据管理经历的各个阶段都有自己的背景及特点,数据管理技术也在发展中不断地完善,其 3 个阶段的比较如下表所示。
![](http://h.yiniuedu.com/bf105312e3261beec2a6853a7625b79e)
- 数据库入门
- 1.常用的数据库
- 2.数据管理技术的3个发展阶段
- 3.数据库是什么?关系型数据库和非关系型数据库又是什么?
- 4.为什么要使用数据库?
- 5.数据库系统是什么?它由哪几部分组成?
- 6.常用数据库访问接口简介
- 7.数据库的种类有哪些?
- 8.几种常用的数据库
- 9.MySQL是什么
- 10.MySQL适用于哪些场景?
- 11.学MySQL前,需要了解这些数据库专业术语
- 12.MySQL客户端和服务器架构(C/S架构)
- 13.明白了MySQL内部结构才能成为高手!
- 14.如何学习数据库(新手必看)?
- 15.小白学习MySQL需要多长时间,能从事哪方面的工作?
- 16.当前市场对数据库程序员的需求如何?待遇如何?
- 17.DBA到底要做什么,成为一名DBA需要具备什么能力?
- 一、数据库的概念和常用工具
- 二、MySQL规范、配置及登录退出操作
- 三、MySQL中的数据类型
- 四、数据库增查改删等操作
- 五、数据表增查改删操作
- 六、MySQL数据增查改删操作
- 七、MySQL存储引擎
- 八、MySQL常用函数
- MySQL的安装和配置
- 1.MySQL 5.7的新特性(新功能)
- 2.MySQL下载步骤详解
- 3.MySQL安装配置教程(Windows系统)
- 4.MySQL免安装版配置教程
- 5.MySQL配置环境变量
- 6.安装MySQL后,如何判断是否已安装成功
- 7.启动MySQL服务的两种方式(图解)
- 8.登录MySQL数据库
- 9.对Linux MySQL软件包的一些说明
- 10.Linux CentOS卸载MySQL(Linux安装MySQL前的准备)
- 11.Linux安装配置MySQL详细步骤
- 12.MySQL my.cnf配置文件详解
- 13.MySQL常用图形化管理工具
- 14.MySQL安装后的目录结构介绍
- 15.MySQL数据库文件存放目录结构详解
- 16.MySQL配置文件(my.ini)详解
- 17.与其它数据库不同,MySQL可以在不同的SQL模式下运行
- 18.MySql Command Line Client闪退原因及解决方案
- MySQL数据库的基本操作
- 1.SQL是什么?它能做什么?
- 2.SQL的基本书写规则
- 3.MySQL查看或显示数据库(SHOW DATABASES语句)
- 4.MySQL创建数据库(CREATE DATABASE语句)
- 5.MySQL修改数据库:ALTER DATABASE用法简介
- 6.MySQL删除数据库(DROP DATABASE语句)
- 7.MySQL选择数据库(MySQL USE语句)
- 8.MySQL注释:单行注释和多行注释
- 9.MySQL中SQL语句的大小写规则
- 10.如何查看MySQL系统帮助?
- 11.看懂SQL错误代码,提高学习效率!
- 数据库高级
- 一、视图的操作
- 二、触发器的操作
- 三、事务的操作
- 四、索引的操作
- 五、存储过程的操作
- 六、数据库的优化方案
- 1.分库、分表和索引
- 2.读写分离和查询优化
- 3.join代替子查询
- 4.尽量使用短小的事务
- 5.常用小技巧
- MySQL使用注意事项
- 1.字符乱码及连接驱动