甲骨文公司数据库-社工库数据联盟
Oracle 数据库基本介绍
一、Oracle数据库概述 1.1 Oracle概述
Oracle Database,又称Oracle RDBMS,简称Oracle。 它是由甲骨文公司开发的关系数据库管理系统。 是一直在数据库领域处于领先地位的产品。 可以说,Oracle数据库系统是目前国际上流行的关系型数据库管理系统。 该系统便携性好,使用方便,功能强大,适用于各种大、中、小型、微机环境。 它是一种高效、可靠、高吞吐量的数据库解决方案。
1.2 数据库管理系统
在数据库系统中,主要存在三种数据模型:层次模型、网络模型和关系模型(另一种面向对象的模型还在探索和研究中),而目前理论成熟和应用广泛的模型是关系模型——关系数据库理论基础。
1.2.1 关系数据库和数据库管理系统
关系数据库是基于关系模型的数据库。 它使用集合代数等数学概念和方法来处理数据库中的数据。 现实世界中的各种实体以及实体之间的各种联系都由关系模型表示。 .
关系模型描述二维表中的数据。 在关系模型中,每个表都有多个字段列和记录行,每个字段列都有固定的类型属性(如数字、字符、日期等)。 关系模型数据结构简单、清晰,数据独立性高,因此是目前主流的数据库数据模型。
在关系数据模型中,关系可以看作是一个由相交的行和列组成的二维表。 表中的一行称为元组,可用于标识实体集中的实体。 表中的列称为属性,给每一列起一个名字就是属性名,表中的属性名不能相同。 列的取值范围称为域。 同一列具有相同的域,不同的列也可以具有相同的域。 表中任意两行(元组)不能相同。 能够唯一标识表中不同行的属性或属性组(即多个属性的组合)称为主键或复合主键。
虽然关系类似于传统的二维表格数据文件,但它们是不同的。 严格来说,关系是一个归一化的二维表,它具有以下性质:
1.2.2 关系型数据库关键代码
在关系型数据库中,键(简称键)是关系模型中一个非常重要的概念,通常是一行(元组)的一个或几个列(属性)。 如果键由一列组成,则称为唯一键; 如果它由多个列(属性)组成,则称为组合键。 密钥的主要类型如下:
1.3 关系型数据库的ER模型
1.3.1 ER模型介绍
在设计关系型数据库时,首先需要为它建立一个逻辑模型。 关系数据库的逻辑模型可以用实体和关系组成的图来表示。 这个图称为ER图,它将现实世界中的实体以及实体之间的联系转换为逻辑模型。 用ER图形表示的逻辑模型称为ER模型,一个标准的ER模型主要由实体、属性和连接三部分组成。
1.3.2 实体和属性
实体是数据对象,是指客观存在的、可以相互区分的事物,如教师、学生、员工等。 每个实体都由一组属性表示。 例如,一个具体的学生有学号、姓名、性别、班级等属性,其中学号可以唯一标识一个具体的学生是一个实体。
具有相同属性的实体组合起来形成实体集——实体的集合,实体是实体集的特例。 例如,实体同学是学生实体集的一个特例。
在ER模型中,实体由一个矩形表示,实体的名称在矩形中表示。 实体名称通常由有意义的以大写字母开头的英文名词表示,联系人名称和属性名称也采用这种方式。
1.3.3 实体之间的关系
在实际应用中甲骨文公司数据库,实体之间存在联系,而这种联系必须在逻辑模型中表现出来。 在ER模型中,连接用菱形表示,菱形框内写有“联系人姓名”,相关实体之间用“连接线”连接,“连接类型”旁边标注连接线”。 接触类型可分为以下3类:
1.3 数据库设计范式
1.3.1 第一范式(1NF)
第一范式是第二范式和第三范式的基础,是最基本的范式。 第一范式包括以下指导原则:
在任何关系型数据库中,第一范式是关系模型的基本要求,不满足第一范式(1NF)的数据库就不是关系型数据库。
1.3.2 第二范式(2NF)
第二范式(2NF)是在第一范式的基础上建立的,即要满足第二范式(2NF)必须先满足第一范式(1NF)。 第二范式(2NF)要求数据库表中的每个实体(即每条记录行)必须是唯一可区分的。 为了区分每一行记录,通常需要为表设置一个“区分列”来存储每个实体的唯一标识符。
第二范式要求实体的属性完全依赖主关键字,即不能有只依赖主关键字一部分的属性。 如果存在,那么这个属性应该和主关键字的这部分分开,形成一个新的实体。 新实体与原实体存在一对多关系。
1.3.3 第三范式(3NF)
第三范式(3NF)是建立在第二范式(2NF)的基础上的,即要满足第三范式(3NF)必须先满足第二范式(2NF)。 第三范式要求非键列对关系表中任何候选键列不存在传递函数依赖,即第三范式要求关系表不包含其他表中包含的非主键信息表。
所谓传递函数依赖是指如果有一个关键字段A决定了非关键字段B,一个非关键字段B决定了非关键字段C,那么非关键字段C的传递函数依赖在关键字段A上。
1.4 Oracle 11g 的新特性
1.4.1 提升信息生命周期管理和存储管理能力
Oracle 11g 具有新的数据分区和压缩功能,可实现更经济的信息生命周期管理和存储管理。 许多必须手动完成的数据分区工作在 Oracle 11g 中已经自动化。 Oracle 11g 还扩展了现有的范围、散列和列表分区功能,增加了间隔、索引和虚拟卷分区功能。
1.4.2 综合召回数据变化
Oracle 11g 有一个 Oracle Total Recall 组件,可以帮助管理员查询过去特定时间点指定表中的数据。 管理员可以使用这种简单实用的方法为数据添加时间维度,以跟踪数据变化、实施审计并满足监管要求。
1.4.3 最大化信息可用性
Oracle 是保护数据库应用程序免于计划内和计划外停机的行业领导者。 Oracle 11g 进一步增强了这种领导地位,数据库管理员现在可以更轻松地满足用户对可用性的期望。 新的可用性特性包括: Oracle Flashback Transaction,可以轻松撤销错误交易和任何相关交易; 并行备份和恢复,提高超大型数据库的备份和存储性能; 关闭数据库后可以修复数据库,提高了系统的可用性。
1.4.4 Oracle 快速文件
Oracle 11g 具有在数据库中存储大对象的下一代功能,包括图像、大文本对象或高级数据类型,如 XML、医学成像数据和 3 维对象。 Oracle Fast Files 组件使数据库应用程序性能与文件系统性能相当。
1.4.5 更快的 XML
在Oracle 11g 中,XML DB 的性能有了很大的提升。 XML DB 是 Oracle 数据库的一个组件,可帮助客户在本地存储和操作 XML 数据。 Oracle 11g 添加了对二进制 XML 数据的支持,现在客户可以选择适合其特定应用程序和性能需求的 XML 存储选项。
1.4.6 透明加密
Oracle 11g 进一步增强了 Oracle 数据库无与伦比的安全性。 这个新版本的数据库增强了 Oracle 透明数据加密,将此功能扩展到卷级加密之外。 Oracle 11g 具有表空间加密功能,可用于加密整个表、索引和其他存储的数据。
1.4.7 嵌入式 OLAP 行列
Oracle 11g 还引入了数据仓库方面的创新。 OLAP 行和列现在可以像物化图一样在数据库中使用,因此开发人员可以使用行业标准 SQL 来实现数据查询,同时仍然受益于 OLAP 行和列的高性能。
1.4.8 Join Fusion和查询结果缓存
Oracle 11g 进一步增强了 Oracle 在性能和可伸缩性方面的行业领先地位,增加了查询结果缓存等新特性。 查询结果缓存通过缓存和重用频繁调用的数据库查询以及数据库和应用程序层函数来提高应用程序性能和可扩展性。
1.4.9 增强的应用开发能力
Oracle 11g 为开发人员提供了开发工具的选择,这些开发工具提供了一个简化的应用程序开发过程,该过程利用了 Oracle 11g 的关键特性,包括客户端缓存、用于提高应用程序速度的二进制 XML、XML 处理以及文件存储和检索。
参考:
Oracle 11g从入门到精通第二版,明日科技着甲骨文公司数据库,清华大学出版社有限公司。