oracle介绍
目录
一、oracle是什么
Oracle Database,又名Oracle RDBMS,或简称Oracle。是甲骨文公司的一款关系数据库管理系统。它是在数据库领域一直处于领先地位的产品。可以说Oracle数据库系统是目前世界上流行的关系数据库管理系统,系统可移植性好、使用方便、功能强,适用于各类大、中、小、微机环境。它是一种高效率、可靠性好的、适应高吞吐量的数据库方案。
发展历史
Oracle 数据库有多个版本,以下是一些主要版本:
- Oracle v2:1979年发布,是首个面向市场的商业SQL关系数据库管理系统,只能运行一些SQL查询和执行少量连接操作。
- Oracle v3:1983年发布,引入了并发控制和可扩展性等新功能。
- Oracle v4:1984年发布,兼容微软的MS - DOS操作系统。
- Oracle v5:1985年发布,引入了客户端 - 服务器计算和分布式数据库系统。
- Oracle v6:1988年发布,首次引入了行级锁定、在线备份和恢复功能。
- Oracle 7:1992年发布,引入了PL/SQL、存储过程、触发器、共享游标和并行服务器选项等功能。
- Oracle 8:1997年6月首次发布,后来在2000年发布了8i,支持原生互联网协议和Java。
- Oracle 9i:2001年发布,引入了Oracle RAC(实时应用集群),以及数据挖掘和数据分析算法。
- Oracle 10g Release 1:2003年发布,引入了网格计算、自动化数据库管理系统和Oracle ASM等功能。
- Oracle 10g Release 2:2005年7月发布,增加了实时应用测试、在线索引和透明数据加密等功能。
- Oracle 11g Release 1:2007年9月发布,引入了SQL调优、Active Data Guard等功能。
- Oracle 11g Release 2:2013年8月发布,增加了混合列压缩、集群文件系统和数据库设备等功能。
- Oracle 12c Release 1:2013年7月发布,引入了多租户架构、内存列存储、SQL模式匹配和原生JSON等功能。
- Oracle 12c Release 2:2016年9月发布,保留了早期功能,并增加了Exadata云服务和客户现场云等功能。
- Oracle 18c:2018年2月在云端发布,是Oracle 12c的后续版本,包含多态表函数等改进功能。
- Oracle 19c:2019年4月在云端发布,适用于Linux和其他平台,增加了自动索引创建、对象存储上的SQL查询和实时统计维护等功能。
- Oracle 23ai:2024年4月发布,将AI引入数据,可简化应用开发和关键任务工作负载,支持所有现代数据类型、工作负载和开发风格,结合了检索增强生成 (RAG) 和企业级LLM等新技术。 此外,Oracle还针对不同的用户需求和场景,发布了一些特定版本,如Oracle Express Edition(XE)等。
特点
- Oracle数据库具有完整的数据库管理功能、完备关系的产品以及具有分布式处理能力的数据库。
- 它对数据的可靠性、大量性、持久性、共享性提供了一套可靠的解决方案、而且可以轻松支持多用户、大事务量的事务处理。
- 它的优点就是可用性强、可扩展性强、数据安全性强、稳定性高,以及现阶段12C支持分布式数据处理。
- 它提供了一套严禁的逻辑结构、文件结构、相关恢复技术的解释和实现。
二、oracle体系结构
Oracle数据库体系结构主要由物理结构和逻辑结构两部分构成,以下为你详细介绍:
2.1 物理结构
Oracle 数据库的物理结构指的是存储在磁盘上的实际文件,主要包括数据文件、控制文件和重做日志文件。
数据文件(Data Files)
- 功能:用于存储数据库中的实际数据,如表、索引、视图等数据库对象的数据都存于其中。
- 特点:数据文件是数据库的核心存储部分,一个表空间可以包含多个数据文件,一个数据文件只能属于一个表空间。数据文件以操作系统文件的形式存在,文件扩展名为
.dbf。
控制文件(Control Files)
- 功能:记录数据库的物理结构信息,如数据文件和重做日志文件的名称、位置,数据库创建时间等。在数据库启动时,实例会读取控制文件来定位和打开其他必要的文件。
- 特点:控制文件是二进制文件,通常会有多个副本存于不同的磁盘,以此保证在一个控制文件损坏时,数据库仍可正常运行。
重做日志文件(Redo Log Files)
- 功能:记录数据库的所有更改操作,主要用于在数据库崩溃或异常关闭后进行恢复,保证数据的一致性和完整性。
- 特点:重做日志文件以循环方式使用,一般会有多个重做日志文件组,每个组包含多个成员。
2.2 逻辑结构
Oracle 数据库的逻辑结构是对数据的组织和管理方式,主要包括表空间、段、区和块。
表空间(Tablespaces)
- 功能:是数据库的逻辑存储单元,用于将不同类型的数据分开存储,便于管理和维护。
- 类型:常见的表空间类型有系统表空间(
SYSTEM)、系统辅助表空间(SYSAUX)、临时表空间(TEMP)、用户表空间等。
段(Segments)
- 功能:是占用存储空间的数据库对象,例如表段用于存储表的数据,索引段用于存储索引的数据。
- 类型:常见的段类型有数据段、索引段、回滚段等。
区(Extents)
- 功能:是数据库存储空间分配的基本单位,由一组连续的数据块组成。当段的空间不足时,数据库会为其分配新的区。
块(Blocks)
- 功能:是数据库读写操作的最小单位,数据库与操作系统进行数据交换时以块为单位。块的大小在数据库创建时确定,通常为操作系统块大小的整数倍。
2.3 实例结构
Oracle 实例由一组后台进程和内存结构组成。
内存结构
- 系统全局区(SGA,System Global Area):是所有服务器进程和后台进程共享的内存区域,包含共享池、数据缓冲区、重做日志缓冲区等。
- 共享池(Shared Pool):用于缓存 SQL 语句和数据字典信息,减少解析 SQL 语句的开销。
- 数据缓冲区(Database Buffer Cache):用于缓存从数据文件中读取的数据块,提高数据访问效率。
- 重做日志缓冲区(Redo Log Buffer):用于临时存储重做日志信息,定期写入重做日志文件。
- 程序全局区(PGA,Program Global Area):是每个服务器进程和后台进程私有的内存区域,用于存储该进程的数据和控制信息。
后台进程
- 数据库写入进程(DBWR,Database Writer):负责将数据缓冲区中的脏数据块写入数据文件。
- 日志写入进程(LGWR,Log Writer):负责将重做日志缓冲区中的重做日志信息写入重做日志文件。
- 系统监控进程(SMON,System Monitor):负责实例崩溃恢复、清理临时段等系统维护任务。
- 进程监控进程(PMON,Process Monitor):负责监控服务器进程和后台进程的状态,在进程异常终止时进行清理和恢复。
综上所述,Oracle 数据库体系结构通过物理结构、逻辑结构和实例结构的协同工作,实现了数据的高效存储、管理和访问。
三、oracle与mysql的区别
mysql方式
在mysql数据库管理系统是可以直接创建多个库(数据库)的。
oracle方式
oracle数据库管理系统,一般是oracle软件就是一个数据库,而且数据库可以创建多个实例,一个实例可以创建多个用户模式(相当于mysql中的库)。
linhuaming

浙公网安备 33010602011771号