序章-0.1 初识数据库

2024-01-07 00:59
文章标签 初识 数据库 0.1 序章

本文主要是介绍序章-0.1 初识数据库,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

大家好,我是杨公子。这是“MySQL方法论与实践”系列的第一篇文章。

众所周知,MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最好的 RDBMS (Relational Database Management System,关系数据库管理系统) 应用软件之一。

我们学习MySQL,首先要弄清楚一些最常见的术语和基本概念,以便更好的理解后续学到的知识。我们需要掌握的基本概念有:数据,数据库,数据库管理系统和数据库系统。

好了,话不多说,我们开始来认识这几个基本概念吧。

1. 数据(data)

在学习数据库之前,应该先理解什么是数据。

数据是描述事物的符号,是数据库中存储的基本对象,是按一定顺序排列组合的物理符号。

数据有多种表现形式,可以是数字,也可以是文字、图形、图像、声音、语言等它们都可以经过数字化后存入计算机。在数据库中数据表示记录,例如,在学生管理数据库中,记录学生的信息包括学号、姓名、性别、年龄、籍贯和联系电话等,这些信息就是数据。

值得注意的是,数据的表现形式还不能完全表达其内容,还需要经过解释。数据的解释是指对数据含义的说明,数据的含义成为数据的语义,数据与其语义是不可分的。

例如,110是一个数据,可以是杨公子高中物理考试的成绩(偷笑,杨公子高中物理可是很强的),也可能是杨公子的体重,还可能是某件商品的价格,当然也可能是我们的匪警报警电话,还可以有其他很多含义。可见,没有明确语义的数据没有实际使用的价值。

2. 数据库(DataBase,DB)

随着计算机技术不断的发展,计算机已经应用程序处理和产生的数据越来越多,这时候就需要将这些数据保存起来,以便进一步加工处理,抽取有用的信息,挖掘数据的更多价值。

计算机数据的存储一般以硬盘为数据存储空间资源,从而保证计算机内的数据能够持久保存。对于数据的处理,就产生了数据库相关的技术,从而保证数据处理的高效性

采用数据库的管理模式不仅提高了数据的存储效率,而且在存储的层面上提高了数据的安全性。通过分类的存储模式让数据管理更加安全便捷,更能实现对数据的调用和对比,并且方便查询等操作的使用。

数据库是指长期存储在计算机内的、有组织的、可共享的数据集合。简单理解就是存放数据的仓库。只不过这个仓库是在计算机存储设备上的,而且数据是按照一定的格式存放的。

数据库中的数据按一定的数据模型组织、描述和储存,具有较小的冗余度(redundancy)、较高的数据独立性(data independency)和易扩展性(scalability),并可为各种用户共享。

3. 数据库管理系统(DataBase Management System,DBMS)

了解了数据和数据库的概念,下面的问题就是如何科学地组织和存储数据,如何高效地获取和维护数据。完成这些任务的是一个系统软件——数据库管理系统。

数据库管理系统介于用户和操作系统之间的一种数据管理软件。它的主要功能包括以下几个方面:

1.数据定义功能

数据库管理系统提供数据定义语言(Data Definition Language,DDL),用户通过它可以方便地对数据库中的数据对象的组成与结构进行定义。

2.数据组织、存储和管理

数据库管理系统要分类组织、存储和管理各种数据,包括数据字典、用户数据、数据的存取路径等。要确定以何种文件结构和存取方式在存储级上组织这些数据,如何实现数据之间的联系。数据组织和存储的基本目标是提高存储空间利用率和提高存取效率。

3.数据操纵功能

数据库管理系统提供数据操纵语言(Data Manipulation Language,DML),用户可以使用它操纵数据,实现对数据库的基本操作:查询、插入、删除和修改等。

4.数据库的事物管理和运行管理

数据库在建立、运用和维护时由数据库管理系统统一管理和控制,以保证事物的正确运行,保证数据的安全性、完整性、多用户对数据的并发使用及发生故障后的系统恢复。

5.数据库的建立和维护功能

数据库的建立和维护功能包括数据库初始数据的输入、转换功能,数据库的存储、恢复功能,数据库的重组织功能和性能监视、分析功能等。

6.其他功能

包括数据库管理系统与网络中其他软件系统的通信功能,一个数据库管理系统与另一个数据库管理系统或文件系统的数据转换功能,异构数据库之间的互访和互操作功能等。

数据库管理系统的功能非常强大,但是数据库的建立、使用和维护等工作只靠一个数据库管理系统是远远不够的,复杂系统没有人的参与是不行的,所以还要有专门的人员来和数据库管理系统一起完成这些工作,这些人被称为数据库管理员。

4. 数据库系统

数据库系统是由数据库、数据库管理系统(及其应用开发程序)、应用程序和数据库管理员(DataBase Administrator,DBA)组成的存储、管理、处理和维护数据的系统。

上图是一个完整的数据库系统的示意图。其中数据库提供数据的存储功能,数据库管理系统提供数据的组织、存取、管理和维护等基础功能,数据库应用系统根据应用需求使用数据库,数据库管理员负责全面管理数据库系统。

番外:数据管理技术简史

通过上面的内容,我们初步了解了一些数据库的知识,也知道了数据库技术是应数据管理任务的需要而产生的。

那么问题来了,最开始计算机中的数据是怎么管理的呢?是直接就有了数据库技术还是经历过其他技术演变发展而来的呢?

杨公子这和你一起追溯数据管理技术的历史,为你解开这个谜团。

在计算机出现的早期,大概在20世纪50年代中期以前,计算机主要用于科学计算。当时硬件设备比较差,外存只用纸带、卡片、磁带,没有磁盘这些直接存取的存储设备;当时的软件条件同样也很差,没有管理数据的专门软件,数据处理的方式是批处理。总体来说就是,数据管理处于人工管理阶段。

 

到了20世纪50年代后期60年代中期,计算机软硬件有了较大的改善。硬件方面有了磁盘、磁鼓等直接存取存储设备;软件方面,操作系统中已经有了专门的数据管理软件,一般称为文件系统;处理方式上不仅有了批处理,而且能够联机实时处理。这时候的数据管理处于文件系统阶段。

20世界60年代后期至今,计算机管理的对象规模越来越大,应用范围越来越广,数据量急剧增长。而且这时硬件已有大容量磁盘,硬件价格下降,软件价格则上升,开发和维护系统软件及应用程序所需的成本相对增加;在处理方式上,联机实时处理要求更多,并开始提出和考虑分布式处理。

在这种背景下,以文件系统作为数据管理手段已经不能够满足应用的需求。于是为了解决多用户、多应用共享数据的需求,使数据为尽可能多的应用服务,数据库技术便应运而生,出现了统一管理数据的专门软件系统——数据库管理系统。

下面我们一起来总结一下数据管理发展的三个阶段的背景及其对应的特点。

总结

这篇文章我们一起了解了数据、数据库、数据库管理系统和数据库系统这四个基本的概念以及他们之间的关系,还一起回顾了数据管理技术的发展历程。

这部分的内容是比较简单的,不过也是对数据库技术的一个总体概览,对大家理解后续的内容有所帮助。


欢迎关注杨公子公众号:Coder杨公子

这篇关于序章-0.1 初识数据库的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/578227

相关文章

Spring Security基于数据库验证流程详解

Spring Security 校验流程图 相关解释说明(认真看哦) AbstractAuthenticationProcessingFilter 抽象类 /*** 调用 #requiresAuthentication(HttpServletRequest, HttpServletResponse) 决定是否需要进行验证操作。* 如果需要验证,则会调用 #attemptAuthentica

MySQL数据库宕机,启动不起来,教你一招搞定!

作者介绍:老苏,10余年DBA工作运维经验,擅长Oracle、MySQL、PG、Mongodb数据库运维(如安装迁移,性能优化、故障应急处理等)公众号:老苏畅谈运维欢迎关注本人公众号,更多精彩与您分享。 MySQL数据库宕机,数据页损坏问题,启动不起来,该如何排查和解决,本文将为你说明具体的排查过程。 查看MySQL error日志 查看 MySQL error日志,排查哪个表(表空间

Linux操作系统 初识

在认识操作系统之前,我们首先来了解一下计算机的发展: 计算机的发展 世界上第一台计算机名叫埃尼阿克,诞生在1945年2月14日,用于军事用途。 后来因为计算机的优势和潜力巨大,计算机开始飞速发展,并产生了一个当时一直有效的定律:摩尔定律--当价格不变时,集成电路上可容纳的元器件的数目,约每隔18-24个月便会增加一倍,性能也将提升一倍。 那么相应的,计算机就会变得越来越快,越来越小型化。

深入理解数据库的 4NF:多值依赖与消除数据异常

在数据库设计中, "范式" 是一个常常被提到的重要概念。许多初学者在学习数据库设计时,经常听到第一范式(1NF)、第二范式(2NF)、第三范式(3NF)以及 BCNF(Boyce-Codd范式)。这些范式都旨在通过消除数据冗余和异常来优化数据库结构。然而,当我们谈到 4NF(第四范式)时,事情变得更加复杂。本文将带你深入了解 多值依赖 和 4NF,帮助你在数据库设计中消除更高级别的异常。 什么是

DM8数据库安装后配置

1 前言 在上篇文章中,我们已经成功将库装好。在安装完成后,为了能够更好地满足应用需求和保障系统的安全稳定运行,通常需要进行一些基本的配置。下面是一些常见的配置项: 数据库服务注册:默认包含14个功能模块,将这些模块注册成服务后,可以更好的启动和管理这些功能;基本的实例参数配置:契合应用场景和发挥系统的最大性能;备份:有备无患;… 2 注册实例服务 注册了实例服务后,可以使用系统服务管理,

速了解MySQL 数据库不同存储引擎

快速了解MySQL 数据库不同存储引擎 MySQL 提供了多种存储引擎,每种存储引擎都有其特定的特性和适用场景。了解这些存储引擎的特性,有助于在设计数据库时做出合理的选择。以下是 MySQL 中几种常用存储引擎的详细介绍。 1. InnoDB 特点: 事务支持:InnoDB 是一个支持 ACID(原子性、一致性、隔离性、持久性)事务的存储引擎。行级锁:使用行级锁来提高并发性,减少锁竞争

开源分布式数据库中间件

转自:https://www.csdn.net/article/2015-07-16/2825228 MyCat:开源分布式数据库中间件 为什么需要MyCat? 虽然云计算时代,传统数据库存在着先天性的弊端,但是NoSQL数据库又无法将其替代。如果传统数据易于扩展,可切分,就可以避免单机(单库)的性能缺陷。 MyCat的目标就是:低成本地将现有的单机数据库和应用平滑迁移到“云”端

ORACLE 11g 创建数据库时 Enterprise Manager配置失败的解决办法 无法打开OEM的解决办法

在win7 64位系统下安装oracle11g,在使用Database configuration Assistant创建数据库时,在创建到85%的时候报错,错误如下: 解决办法: 在listener.ora中增加对BlueAeri-PC或ip地址的侦听,具体步骤如下: 1.启动Net Manager,在“监听程序”--Listener下添加一个地址,主机名写计

MyBatis 切换不同的类型数据库方案

下属案例例当前结合SpringBoot 配置进行讲解。 背景: 实现一个工程里面在部署阶段支持切换不同类型数据库支持。 方案一 数据源配置 关键代码(是什么数据库,该怎么配就怎么配) spring:datasource:name: test# 使用druid数据源type: com.alibaba.druid.pool.DruidDataSource# @需要修改 数据库连接及驱动u

CentOS下mysql数据库data目录迁移

https://my.oschina.net/u/873762/blog/180388        公司新上线一个资讯网站,独立主机,raid5,lamp架构。由于资讯网是面向小行业,初步估计一两年内访问量压力不大,故,在做服务器系统搭建的时候,只是简单分出一个独立的data区作为数据库和网站程序的专区,其他按照linux的默认分区。apache,mysql,php均使用yum安装(也尝试