Oracle数据库

编辑
本词条由“匿名用户” 建档。

Oracle数据库

编辑

Oracle 数据库,是来自 Oracle 的数据库管理系统软件

关系数据和对象关系数据都可以存储。

属性

编辑

与 Microsoft SQL Server 和 IBM Db2 一起,Oracle 是 RDBMS 领域的市场领导者之一。 在大型机领域,Unix系统的Sun Fire机器Solaris或IBM机器是经常使用的平台。 在中端领域,几乎所有的Unix系统都被支持和使用,还有OpenVMS。 长期以来,Linux 与 Solaris 一起被视为主要的战略平台,并且非常广泛。 Windows 也因其广泛使用而在战略上得到支持。 根据 DB Engines 排名,Oracle 是最受欢迎的数据库管理系统。

Oracle 数据库管理系统可以作为快捷版 (XE) 免费使用。 然而,这个版本比 IBM 相应的免费 Db2 版本更受限制,因为除其他外,它 不支持将 Java 类加载到数据库本身。 此外,有 1 GiB RAM 的限制,最多使用一个 CPU 核心和最大数据库大小为 11 GiB 的用户数据。

出于学习目的,可以在制造商的网站上免费获得 Oracle 数据库。 没有许可证服务器或许可证密钥技术障碍。 Oracle 的其他产品也在那里提供。

在 10g 版中,进一步实现了 Oracle 网格的愿景:版本名称中的小写“g”也代表网格。 自 10g 以来,Oracle 一直在提供自己的集群管理器软件,称为 Oracle Cluster Ready Services。 这是在 9i 中首次发布的,首先是针对 Linux,后来也针对 Windows。 从 Oracle 10g 开始,这适用于 Oracle 支持的每个平台。 据该公司称,12c版本中的字母扩展“c”强调了对云产品的关注。

因为 SQL 只是一种描述性语言,所以开发了一种称为 PL/SQL 的 SQL 的专有过程扩展。 PL/SQL 代表过程语言/结构查询语言。 PL/SQL 命令可以作为匿名块临时输入或以所谓的“存储过程”的形式存储在数据库中。

可以保存 XML 数据结构。 BLOB和 CLOB支持非关系数据(视频、音乐、文档、传真等)的存储。 许多非关系数据格式的索引已经包括在内。 支持具有您自己的编程索引的扩展。 空间数据可以按关系存储,支持空间索引和查询(空间选项)。

Oracle 数据库的默认隔离级别是读提交。 H。 查询始终会看到所有数据处于查询开始时提交时的状态。 您还可以为会话或事务设置隔离级别“序列化”或“只读”(无 SQL 标准)。 未明确支持 SQL 标准中定义的其他两个隔离级别。 通过存储回滚信息,读访问永远不会导致写访问阻塞,反之亦然。

附加属性列表

  • ACID 属性的实现
  • 跨平台分布式数据库支持
  • 数据仓库功能
  • 消息传递,包括 JMS
  • OLAP 和数据挖掘
  • 智能数据备份
  • Java
  • PL/SQL 或 Java 中的存储过程
  • 查询中的正则表达式支持
  • 表的版本控制
  • 虚拟专用数据库功能
  • 对冲
    • 通过具有故障转移功能 的主动/主动集群选项出现实例故障(例如电源故障),
    • 通过可选的备用数据库和 Oracle Dataguard 以及媒体故障(硬盘故障)
    • 使用闪回的用户错误(在记录级别、表级别或数据库范围内)
  • 数据仓库功能例如 B. 存储大量数据的数据类型、分区、可迁移表空间、大表空间、OLAP查询位图索引、星型转换、分布式数据库接入、备库
  • 大量内置 SQL 函数和分析函数,均可通过用户自定义函数随意扩展
  • 基于成本的优化器,根据给定的目标吞吐量或响应时间在运行时自动创建执行计划
  • 广泛的安全概念,用于管理和转移对所有数据库对象的权限、角色和策略的分配
  • 逐行访问控制 (FGAC) 作为现有逐列访问控制的补充
  • 审核
  • 用于将资源动态分配给配置文件资源管理
  • 复杂的调整选项,从版本 10g 开始,辅以所谓的“顾问”
  • 索引组织表等性能特点(表保存为索引,省略基本表)
  • 专有的内置编程语言 PL/SQL 与 SQL 交织在一起(可以进行本地编译,本地数据类型)
  • 从版本 8i 开始,在 Oracle 内核中与 Java 的额外集成(将 Java 加载到数据库中)
  • 允许存储和分析地理空间数据的 Oracle Spatial 和 Graph 等扩展
  • 集成全文搜索
  • 使用连接器连接到大数据

与 ANSI SQL 标准的偏差

与大多数数据库系统一样,数据库系统并不完全符合当前有效的 SQL 标准——主要是因为 Oracle 的xxx个版本是在 SQL 首次由 ANSI 定义之前编写的。 但是,已满足连续的 ANSI 标准。 除了仍然可用的专有语法外,现在还支持 ANSI 连接语法

当从其他数据库系统移植到 Oracle 数据库时,以下与 SQL 标准的偏差很重要:

  • 日期数据类型还包含时间。
  • 布尔数据类型不存在。
  • 数字数据类型 number 有几个数字子类型
  • 不区分空字符串和空值。
  • 在 UNION 中,NULL 值只兼容(必须转换)字符串而不是所有数据类型。
  • 用于存储不同长度字符串的数据类型在Oracle中称为“VARCHAR2”,限制为4000字节。 从 Oracle 12 开始,32767 字节也是可能的。 还支持指定 ANSI 数据类型 VARCHAR,但该列仍然在内部创建为 VARCHAR2。 在早期版本中,VARCHAR 类型的表列最多只能存储 2000 个字符(直到版本 7),并且空格序列被解释为 NULL(直到版本 6)。

架构

编辑

可供客户使用的 Oracle 数据库系统包括:

  • 一个或多个侦听器进程
  • 一个或多个数据库实例,实际的数据库管理系统
  • 大量数据库文件,实际数据库

多个数据库实例可以同时打开一组数据库文件,这就是Oracle RAC,一个数据库实例一次只能打开一组数据库文件。

Oracle数据库

详细地,该系统可以表征如下:

监听进程(Oracle监听器)

接受来自数据库客户端的连接请求并将它们连接到数据库实例。 为数据库客户端启动 Oracle 服务器进程。

数据库实例(Oracle实例)

这是分配CPU和RAM资源的地方,一个实例由多个Oracle服务器进程(前台和后台进程)组成,它们以共享内存的形式提供公共主内存。 前台进程接受来自数据库客户端的SQL语言的数据库查询(Query)或数据修改指令(DML),执行这些命令并返回结果数据。

内容由匿名用户提供,本内容不代表vibaike.com立场,内容投诉举报请联系vibaike.com客服。如若转载,请注明出处:https://vibaike.com/376494/

(10)
词条目录
  1. Oracle数据库
  2. 属性
  3. 附加属性列表
  4. 与 ANSI SQL 标准的偏差
  5. 架构
  6. 监听进程(Oracle监听器)
  7. 数据库实例(Oracle实例)

轻触这里

关闭目录

目录