数据库概述

数据库概述

目录

数据库概述

一、什么是数据库

二、数据库管理系统(DBMS)

三、数据库的发展史

四、常见数据库

五、DBMS支持的数据模型

六、MySQL简介


一、什么是数据库

数据库: 存储数据的仓库,是长期存放在计算机内、有组织、可共享的大量数据的集合。数据库中的数

据按照一定数据模型组织、描述和存储,具有较小的冗余度,较高的独立性和易扩展性,并为各种用户 共享,总结为以下几点:
  • 数据结构化
  • 数据的共享性高,冗余度低,易扩充
  • 数据独立性高
  • 数据由 DBMS 统一管理和控制(安全性、完整性、并发控制、故障恢复)
 

二、数据库管理系统(DBMS)

数据库系统成熟的标志就是数据库管理系统的出现。数据库管理系统 (DataBase ManagermentSystem,简称 DBMS) 是管理数据库的一个软件,它充当所有数据的知识库,并对它的存 储、安全、一致性、并发操作、恢复和访问负责。是对数据库的一种完整和统一的管理和控制机制。数 据库管理系统不仅让我们能够实现对数据的快速检索和维护,还为数据的安全性、完整性、并发控制和 数据恢复提供了保证。数据库管理系统的核心是一个用来存储大量数据的数据库。 DBMS是所有数据的知识库,并对数据的存储、安全、一致性、并发操作、恢复和访问负责。 DBMS有一个数据字典(有时被称为系统表),用于贮存它拥有的每个事物的相关信息,例如名字、结 构、位置和类型,这种关于数据的数据也被称为元数据(metadata

三、数据库的发展史

初始阶段 ----- 人工管理:人力手工整理存储数据
萌芽阶段 ----- 文件系统:使用磁盘文件来存储数据
初级阶段 ----- 第一代数据库:出现了网状模型、层次模型的数据库
中级阶段 ----- 第二代数据库:关系型数据库和结构化查询语言
高级阶段 ------ 新一代数据库: NOSQL 型数据库
 

四、常见数据库

关系型数据库(RDBMS)

关系型数据库,是指采用了关系模型来组织数据的数据库,其以行和列的形式存储数据,以便于用户理解,关系型数据库这一系列的行和列被称为表,一组表组成了数据库。用户通过查询来检索数据库中的数据,而查询是一个用于限定数据库中某些区域的执行代码。关系模型可以简单理解为二维表格模型,而一个关系型数据库就是由二维表及其之间的关系组成的一个数据组织。关系型数据库常见的有 Oracle,SQLServer,DB2,Mysql,除了Mysql大多数的关系型数据库如果要使用都需要支付一笔价格高昂的费用,即使是免费的Mysql性能也受到了诸多的限制。

非关系型数据库(NoSQL)

NoSQL,泛指非关系型的数据库。随着互联网web2.0网站的兴起,传统的关系数据库在处理web2.0网站,特别是超大规模和高并发的SNS类型的web2.0纯动态网站已经显得力不从心,出现了很多难以克服的问题,而非关系型的数据库则由于其本身的特点得到了非常迅速的发展。NoSQL数据库的产生就是为了解决大规模数据集合多重数据种类带来的挑战,特别是大数据应用难题。

NoSQL最常见的解释是“non-relational”, “Not Only SQL”也被很多人接受。NoSQL仅仅是一个概念,泛指非关系型的数据库,区别于关系数据库,它们不保证关系数据的ACID特性。NoSQL是一项全新的数据库革命性运动,其拥护者们提倡运用非关系型的数据存储,相对于铺天盖地的关系型数据库运用,这一概念无疑是一种全新的思维的注入。

NoSQL有如下优点:易扩展,NoSQL数据库种类繁多,但是一个共同的特点都是去掉关系数据库的关系型特性。数据之间无关系,这样就非常容易扩展。无形之间也在架构的层面上带来了可扩展的能力。大数据量,高性能,NoSQL数据库都具有非常高的读写性能,尤其在大数据量下,同样表现优秀。这得益于它的无关系性,数据库的结构简单。常见NoSQL数据库有:Membase、MongoDB。

五、DBMS支持的数据模型

层次模型
若用图来表示,层次模型是一棵倒立的树。在数据库中,满足一下条件的数据模型称为层次模型:
  • 有且仅有一个节点无父节点,这个节点称为根节点
  • 其他节点有且仅有一个父节点。桌面型的关系模型数据库

网状模型
在现实世界中,事物之间的联系更多的是非层次关系的,用层次模型表示非树型结构是很不直接的,网 状模型则可以克服这一弊病。网状模型是一个网络。在数据库中,满足以下两个条件的数据模型称为网 状模型。A. 允许一个以上的节点无父节点; B. 一个节点可以有多于一个的父节点。 从以上定义看出,网状模型构成了比层次结构复杂的网状结构,适宜表示多对多的联系。
 
 
关系模型
以二维表的形式表示实体和实体之间联系的数据模型称为关系数据模型。从模型的三要素角度看,关系
模型的内容为:
数据结构:一张二维表格。
数据操作:数据表的定义、检索、维护、计算等。
数据约束条件:表中列的取值范围即域值的限制条件。
 

六、MySQL简介

MySQL数据库是一种开放源代码的关系型数据库管理系统(RDBMS),可以使用最常用结构化查询语言进行数据库操作。也因为其开源的特性,可以在General Public License的许可下下载并根据个性化的需要对其进行修改。MySQL数据库因其体积小、速度快、总体拥有成本低而受到中小企业的热捧,虽然其功能的多样性和性能的稳定性差强人意,但是在不需要大规模事务化处理的情况下,MySQL也是管理数据内容的好选择之一。

MySQL 是一个小型关系数据库管理系统,开发者为瑞典 MySQL AB 公司。在 2008 1 16 号被 sun 公司 10亿美金收购。 2009 年, SUN 又被 Oracle 74 亿美金收购。
 

系统特性

1.   MySQL使用 C和 C++编写,并使用了多种编译器进行测试,保证了源代码的可移植性。

2.支持AIX、FreeBSD、HP-UX、Linux、Mac OS、NovellNetware、OpenBSD、OS/2 Wrap、Solaris、Windows等多种操作系统。

3.为多种编程语言提供了 API。这些编程语言包括 C、C++、Python、Java、Perl、PHP、Eiffel、Ruby,.NET和 Tcl 等。

4.支持多线程,充分利用 CPU 资源。

5.优化的 SQL查询算法,有效地提高查询速度。

6.既能够作为一个单独的应用程序应用在客户端服务器网络环境中,也能够作为一个库而嵌入到其他的软件中。

7.提供多语言支持,常见的编码如中文的 GB 2312、BIG5,日文的 Shift_JIS等都可以用作数据表名和数据列名。

8.提供 TCP/IP、ODBC 和 JDBC等多种数据库连接途径。

9.提供用于管理、检查、优化数据库操作的管理工具。

10.支持大型的数据库。可以处理拥有上千万条记录的大型数据库。

11.支持多种存储引擎。

12.MySQL 是开源的,所以你不需要支付额外的费用。

13.MySQL 使用标准的 SQL数据语言形式。

14.MySQL 对 PHP 有很好的支持,PHP是比较流行的 Web 开发语言。

15.MySQL是可以定制的,采用了 GPL协议,你可以修改源码来开发自己的 MySQL 系统。

16.在线 DDL/更改功能,数据架构支持动态应用程序和开发人员灵活性

17.复制全局事务标识,可支持自我修复式集群

18.复制无崩溃从机,可提高可用性

19.复制多线程从机,可提高性能

20.3倍更快的性能

21.新的优化器

22.原生JSON支持

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值