数据库简介、MySQL

目录

数据库简介:

数据库基本结构:

数据库的特点:

数据库的种类:

关系型数据库(RDBMS):

数据库的使用排名:

结构语言:

MySQL:

MySQL特点:

关于SQL的读法:


数据库简介:

数据库(Database)是按照数据结构来组织、存储和管理数据的仓库,它产生于距今六十多年前,随着信息技术和市场的发展,特别是二十世纪九十年代以后,数据管理不再仅仅是存储和管理数据,而转变成用户所需要的各种数据管理的方式。数据库有很多种类型,从最简单的存储有各种数据的表格到能够进行海量数据存储的大型数据库系统都在各个方面得到了广泛的应用。

简单来说是本身可视为电子化的文件柜——存储电子文件的处所,用户可以对文件中的数据进行新增、截取、更新、删除等操作。

数据库基本结构:

数据库的基本结构分三个层次,反映了观察数据库的三种不同角度。

以内模式为框架所组成的数据库叫做物理数据库;以概念模式为框架所组成的数据叫概念数据库;以外模式为框架所组成的数据库叫用户数据库。

⑴ 物理数据层

它是数据库的最内层,是物理存贮设备上实际存储的数据的集合。这些数据是原始数据,是用户加工的对象,由内部模式描述的指令操作处理的位串、字符和字组成。

⑵ 概念数据层

它是数据库的中间一层,是数据库的整体逻辑表示。指出了每个数据的逻辑定义及数据间的逻辑联系,是存贮记录的集合。它所涉及的是数据库所有对象的逻辑关系,而不是它们的物理情况,是数据管理员概念下的数据库。

⑶ 用户数据层

它是用户所看到和使用的数据库,表示了一个或一些特定用户使用的数据集合,即逻辑记录的集合。

数据库不同层次之间的联系是通过映射进行转换的。

数据库的特点:

⑴ 实现数据共享:

数据共享包含所有用户可同时存取数据库中的数据,也包括用户可以用各种方式通过接口使用数据库,并提供数据共享。

⑵ 减少数据的冗余度:

同文件系统相比,由于数据库实现了数据共享,从而避免了用户各自建立应用文件。减少了大量重复数据,减少了数据冗余,维护了数据的一致性。

⑶ 数据的独立性:

数据的独立性包括逻辑独立性(数据库中数据库的逻辑结构和应用程序相互独立)和物理独立性(数据物理结构的变化不影响数据的逻辑结构)。

⑷ 数据实现集中控制:

在文件管理方式中,数据处于一种分散的状态,不同的用户或同一用户在不同处理中其文件之间毫无关系。利用数据库可对数据进行集中控制和管理,并通过数据模型表示各种数据的组织以及数据间的联系。

⑸数据的一致性和可维护性,以确保数据的安全性和可靠性:

主要包括:①安全性控制:以防止数据丢失、错误更新和越权使用;②完整性控制:保证数据的正确性、有效性和相容性;③并发控制:使在同一时间周期内,允许对数据实现多路存取,又能防止用户之间的不正常交互作用。

⑹ 故障恢复

由数据库管理系统提供一套方法,可及时发现故障和修复故障,从而防止数据被破坏。数据库系统能尽快恢复数据库系统运行时出现的故障,可能是物理上或是逻辑上的错误。比如对系统的误操作造成的数据错误等。

数据库的种类:

数据库通常分为层次式数据库网络式数据库关系式数据库三种。而不同的数据库是按不同的数据结构来联系和组织的。

数据结构:

数据的组织形式或数据之间的联系,数据结构又分为数据的逻辑结构和数据的物理结构。

数据的逻辑结构:

从逻辑的角度(即数据间的联系和组织方式)来观察数据,分析数据,与数据的存储位置无关;

数据的物理结构:

数据在计算机中存放的结构,即数据的逻辑结构在计算机中的实现形式,所以物理结构也被称为存储结构。(这里只讨论逻辑结构)

数据模型:

反映和实现数据联系的方法

层次模型:

层次结构模型实质上是一种有根结点的定向有序树(在数学中"树"被定义为一个无回的连通图)。

按照层次模型建立的数据库系统称为层次模型数据库系统。IMS(Information Management System)是其典型代表。

信息管理系统IMS包括两个主要的部分,分别是:数据库管理系统(IMS DB)和事务管理系统(IMS TM)。在数据库管理系统(IMS DB)里,数据被分层处理。层与层之间的数据彼此独立。这样处理数据的目的是使得数据保持彼此的独立完整,优化数据的存储和获取进程。事务管理系统(IMS TM)主要负责输入或输出程序、提供格式化、记录日志和信息复原、维护系统交流的安全、监视程序的计划和执行情况。它还应用于信息系统中的排列请求。

网状结构模型:

按照网状数据结构建立的数据库系统称为网状数据库系统。

关系结构模型

关系型数据结构把一些复杂的数据结构归结为简单的二元关系(二维表格)。

由关系数据结构组成的数据库系统被称为关系数据库系统。

在关系数据库中,对数据的操作几乎全部建立在一个或多个关系表格上,通过对这些关系表格的分类、合并、连接或选取等运算来实现数据的管理。

关系型数据库(RDBMS):

所谓的关系型数据库RDBMS(Relational Database Management System),是建立在关系模型基础上的数据库。

关系型数据库的主要产品:

  • oracle:在以前的大型项目中使用,银行,电信等项目
  • mysql:web时代使用最广泛的关系型数据库
  • ms sql server:在微软的项目中使用
  • sqlite:轻量级数据库,主要应用在移动平台

数据库的使用排名:

https://db-engines.com/en/ranking

结构语言:

1974年IBM的Ray Boyce和Don Chamberlin将Codd关系数据库的12条准则的数学定义以简单的关键字语法表现出来,里程碑式地提出了SQL(Structured Query Language)语言。

SQL的功能包括查询、操纵、定义和控制,是一个综合的、通用的关系数据库语言,同时又是一种高度非过程化的语言,只要求用户指出做什么而不需要指出怎么做。

SQL集成实现了数据库的生命周期中的全部操作。

SQL提供了与关系数据库进行交互的方法,它可以与标准的编程语言一起工作。

自产生之日起,SQL语言便成了检验关系数据库的试金石,而SQL语言标准的每一次变更都指导着关系数据库产品的发展方向。然而,直到二十世纪七十年代中期,关系理论才通过SQL在商业数据库Oracle和DB2中使用。

MySQL:

MySQL是一个关系型数据库管理系统,由瑞典MySQL AB公司开发,后来被Sun公司收购,Sun公司后来又被Oracle公司收购,目前属于Oracle旗下产品

MySQL所使用的 SQL 语言是用于访问数据库的最常用标准化语言。MySQL 软件采用了双授权政策,分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放代码这一特点,一般中小型网站的开发都选择 MySQL 作为网站数据库。

MySQL特点:

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

  • 支持多种操作系统,如Linux、Windows、AIX、FreeBSD、HP-UX、MacOS、NovellNetware、OpenBSD、OS/2 Wrap、Solaris等

  • 为多种编程语言提供了API,如C、C++、Python、Java、Perl、PHP、Eiffel、Ruby等

  • 支持多线程,充分利用CPU资源

  • 优化的SQL查询算法,有效地提高查询速度
  • 提供多语言支持,常见的编码如GB2312、BIG5、UTF8
  • 提供TCP/IP、ODBC和JDBC等多种数据库连接途径
  • 提供用于管理、检查、优化数据库操作的管理工具
  • 大型的数据库。可以处理拥有上千万条记录的大型数据库
  • 支持多种存储引擎
  • MySQL 软件采用了双授权政策,它分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择MySQL作为网站数据库
  • MySQL使用标准的SQL数据语言形式
  • Mysql是可以定制的,采用了GPL(GNU通用公共许可证:General Public License)协议,你可以修改源码来开发自己的Mysql系统
  • 在线DDL更改功能
  • 复制全局事务标识
  • 复制无崩溃从机
  • 复制多线程从机

关于SQL的读法:

《SQL学习指南》这本书中有说到:SQL并不是任何短语的缩写(尽管许多人许多人坚持地认为它代表 结构化查询语言(Structured Query Language))。当提到这个语言时,可以使用独立的字母(S.Q.L)或者使用单词:sequel  

猜你喜欢

转载自blog.csdn.net/lily559/article/details/82317727