Oracle 数据库 11g:默认行为的变化

此页说明 Oracle Database 11g 与以前发行版相比在行为方面的一些变化。某些情况下,几个参数的默认值已更改。另外还引入了新的行为或要求,它们可能会影响当前的脚本或应用程序。在数据库管理方面,Oracle Database 11g 中有一些增强。有关详细信息,请参阅 Oracle Database New Features Guide 11g 发行版 1 (11.1)。

功能

说明

Unicode 5.0 支持
  • AL32UTF8 和 AL16UTF16 字符集的 NLS 数据文件已更新,以匹配版本 5.0 的 Unicode 标准字符数据库。借助该增强,Oracle 数据库已符合最新版本的标准。
OracleJVM Java/JDK 5.0 兼容性
  • OracleJVM 支持 Sun 的 JDK 1.5。该功能使 J2SE 应用程序 (独立 JDBC 或中间层) 可以移植到 Oracle 数据库中,并且允许利用 J2SE 5.0 的主要优点,例如 Java 批注所支持的声明性编程样式。
OracleJVM JIT 配置
  • 默认情况下启用 JIT (它是现成的) 且无需进行更多配置。
可以在 Linux 和 Windows 之间传输数据库
  • 此功能允许在 Linux 和 Windows 之间简单地移动数据库。这将导致可以在 Linux 和 Windows 之间传输数据库,实现跨平台的物理备用。
自动报告损坏的块
  • 在实例恢复期间,如果遇到损坏的块,将自动填充 DBA_CORRUPTION_LIST。备份、介质恢复和实例恢复的每个级别都会进行块验证。
联机应用程序维护和升级应用程序
  • Oracle Database 11g 引入了若干功能。将这些功能一起使用时,可以大大减少因编写 Oracle 数据库应用程序的补丁程序和升级程序以及应用这些补丁程序和升级程序而产生的停机时间 (与 Oracle Database 10g 中的这种停机时间相比)。

  • 具有 WAIT 选项的 DDL 是新的默认功能。等待时间是在实例范围内指定的 (在初始化参数文件中),并且可以在会话级别修改。借助使用 WAIT 选项指定的 DDL 命令,您可以灵活地定义命令成功之前的宽限期,而不是立即引发错误。

  • 通过 ADD COLUMN 功能,使用 DEFAULT 值和 NOT NULL 约束条件添加新列不再要求在所有现有记录中存储默认值。这不但使得无论现有数据量是多少,都可以在瞬间完成方案修改,而且还减少了占用的空间。

  • 在以前的发行版中,元数据通过整个对象的粒度来记录对象之间的相关性。这意味着当没有逻辑要求这样做时,相关对象有时候会失效。Oracle Database 11g 在更细的粒度级别记录相关性元数据。通过减少相关对象因所依赖的对象发生变化而失效的可能性,提高了应用程序可用性。

  • 使索引不可见是使索引不可用甚至删除索引的替代方法。通过不可见的索引,可以指定应用程序的特定操作或模块利用临时索引结构,而不影响应用程序整体。可以使用不可见的索引来测试索引的删除情况,而不必立即将索引删除,这样,就提供了一个宽限期以便在生产环境中进行测试。

  • 在本发行版中,Oracle 数据库为实体化视图日志添加了会话级别的控制。可以针对单个会话禁用对实体化视图 (实体化视图日志) 更改的捕获,而继续对其他会话所做的更改进行事件记录。该功能可减少因应用程序升级而产生的停机时间。

  • 在以前的发行版中,如果表定义了日志或实体化视图,则无法重新定义该表。但在本发行版中,现在可以将实体化视图日志克隆到中间位置,如触发器、索引和其他类似的相关对象。在重新定义的最后,ROWID 日志失效。最初,所有相关实体化视图必须执行完全刷新。

  • “在联机表重新定义之后将相关 PL/SQL 重新编译的需要降至最低”功能可以使联机表重新定义之后重新编译相关 PL/SQL 包的需要降至最低。该功能可减少在联机表重新定义之后手动重新编译相关 PL/SQL 所花费的时间和精力。该功能还包括视图、同义词和在逻辑上不受重新定义行为影响的其他表相关对象 (触发器除外)。

  • “联机索引创建和重建”增强消除了在创建或重建联机索引时独占锁定的需要,使这些操作完全透明。

  • Oracle Database 11g 引入了新的 ALTER TABLE 语法。操作系统首次使文件甚至对其所有者也是只读的。而以前,只能使表对其所有者以外的用户只读。
虚拟列
  • 虚拟列通过对表达式求值来定义,求值结果成为表列的元数据。可以在创建表或修改表时定义虚拟列。

  • 应用程序开发人员可以使用虚拟列将计算和转换定义为表的列 (元数据) 定义,而不会占用空间。这使得应用程序开发更不易出错,并通过为这些虚拟列的优化程序提供附加统计信息,增强了查询优化。

对 Oracle XML DB 的二进制 XML 支持
  • 二进制 XML (这是表示 XML 文档结构的一种方法) 为在数据库中保存 XML 添加了第三存储模型。它实现 (而不是取代) 了现有对象存储和文本存储模型。

  • 它使得无论 XML 方案是否可用都可以对 XML 操作进行重大优化,并且无论 XML 在磁盘上、内存中还是在线上,都允许其内部表示相同。

XMLIndex
  • 该功能允许组织对 XML 文档有效地编制索引,而不要求事先明确知道将编制索引的 XML 的形状或内容。它提供完全支持,可以对已编制索引的 XML 内容执行极为高效的基于 XPath 的搜索。
自动诊断资料档案库
  • 自动诊断资料档案库 (ADR) 是新的由系统管理的资料档案库,用于存储和组织跟踪文件及其他错误诊断数据。ADR 提供了数据库遇到的所有严重错误的全面视图,并且维护问题诊断和问题解决方案所需的所有相关数据。

  • 它提供了一种统一、一致的机制,来存储、格式化和查找所有数据库诊断信息。ADR 可自动针对严重错误生成意外事件,并提供意外事件管理功能,因而大大减少了客户解决问题的时间。

自动健康监视
  • “自动健康监视”功能可主动检查数据库健康状况,并识别影响数据库的任何问题。借助该功能,DBA 可全面了解数据库的当前健康状况,并确定如何解决影响数据库的问题。

  • 根据组件或具体情况,“自动健康监视”或者隔离违规的组件或资源,或者对问题进行修复。该功能可帮助企业将停机时间降至最少,并提前制定断电计划。

ASM 滚动升级
  • 滚动升级功能允许对 ASM 集群的独立节点进行移植或打补丁,而不影响数据库的使用。滚动升级可实现更长的正常运行时间,并从容升级到新发行版。
用于 ASM 管理的新的 SYSASM 权限
  • 该功能引入了新的 SYSASM 权限,以允许将数据库管理和存储管理责任分开。通过 SYSASM 权限,管理员可以管理可由多个数据库共享的磁盘组。SYSASM 权限与 SYSDBA 权限有明确的分工。
将单实例 ASM 转换为集群 ASM
  • 该功能在 Enterprise Manager 中提供转换支持,可通过在所有节点上显式配置 ASM 将非集群 ASM 数据库转换为集群 ASM 数据库。它还将单实例扩展为 Oracle RAC 转换实用程序,以支持备用数据库。

  • 通过简化转换,客户可以更容易地移植其数据库并利用 Oracle RAC 提供的优势,例如可伸缩性和高可用性。

数据库重放
  • 借助“数据库重放”,用户可以通过捕获生产系统上的实际数据库工作量并在测试系统上重放该工作量,来执行真实测试。它还提供了分析和报告功能,以突出显示潜在问题 (例如,遇到的错误和性能差别) 并就修复问题的方法提出建议。
SQL 重放
  • “SQL 重放”提供了一种简单方法来评估更改对 SQL 语句性能的影响,方法是对语句在更改之前和更改之后的响应时间进行对比。通过“SQL 重放”可以捕获源系统 (例如生产数据库) 的 SQL 工作量,并在应用了更改的测试系统上重放该工作量。
数据库克隆增强
  • 该功能支持从一般 RMAN 备份集进行克隆,从而消除了对源和目标登台区的要求,并且增强了 Enterprise Manager 数据库克隆页中的作业概要用户界面。
增强的自适应度量阈值
  • “自适应度量阈值”功能简化并改进了对数据库性能度量预警阈值的选择。该功能可帮助 DBA 非常轻松地配置高质量、受基线驱动的性能预警阈值。

  • 与 AWR 基线的完全集成是度量统计信息的来源

  • 快速配置选项提供了基于 OLTP 或数据仓库系统概要文件的阈值的单击式启动程序集合

  • SYSTEM 移动时段基线的自动时间组选择

  • 基于已知问题的响应级别对候选预警度量执行的指导发现

  • 改进的度量绘制和分析功能

自动任务
  • 在 Oracle Database 11g 中,“自动任务”可以在易于管理的窗口中运行数以百计或千计的作业。它添加了必需的计划程序基础结构,以全局管理该非常易于管理的作业负荷。
自动维护任务管理
  • 该功能提供对各种数据库维护任务 (例如自动优化程序统计信息收集和自动段指导等等) 之间资源 (CPU 和 I/O) 分配工作的现成管理。CPU 是自动管理的。仅当启用了 I/O 管理器时,才管理 I/O。
自动工作量资料档案库 (AWR) 基线
  • 通过提供将特定时段标记为感兴趣的时段 (可以作为未来的比较依据) 的能力,自动工作量资料档案库 (AWR) 基线可以进行精确的性能比较。

  • 通过该强大功能,可以定义动态基线和未来基线,从而简化了创建和管理用于比较的性能数据的过程。

将 DBMS_JOB 移植到 Oracle 计划程序
  • DBMS_JOB 用户可以选择将其作业移植到 Oracle 计划程序。如果这样做,他们的 DBMS_JOB 作业将成为 Oracle 计划程序作业,并且他们可以利用 Oracle 计划程序的所有功能。DBMS_JOB 用户随后可以利用 Oracle 计划程序的功能。
简化的初始化参数管理
  • 该发行版具有一些增强功能,例如容错性更好的 SPFILE、更容易的 SPFILE 丢失恢复和更直观的 Enterprise Manager 初始化参数管理界面,该界面使得服务器参数文件和初始化参数值的管理更加容易。
增强的灵活体系结构 (OFA) 支持
  • 数据库安装过程已重新设计为基于 ORACLE_BASE 环境变量。到目前为止,设置该变量是可选的,且唯一需要的变量是 ORACLE_HOME。使用该功能时,ORACLE_BASE 是唯一需要的输入,并且 ORACLE_HOME 设置派生于 ORACLE_BASE。此变更优化了组织 Oracle 软件安装的方式,从而使进行中的管理更方便。

  • 该功能使默认 Oracle 数据库安装更符合灵活体系结构 (OFA) 规范,从而改进了可管理性。

与可管理性相关的增强
  • “自动存储管理”中的新功能扩展了存储管理自动化,改进了可伸缩性,并简化了 Oracle 数据库文件的管理。

  • 在以前的发行版中,Advanced Replication 是基于触发器的复制方法。在 Oracle 数据库 11 g 中,该功能是现有功能到基于 Web 的 Enterprise Manager Database Control 的转换。该功能从 11 g Enterprise Manager Database Control 管理 Advanced Replication,从而支持现有的 Advanced Replication 客户。

  • ADDM 已得到了增强,可以提供全面的集群范围的性能诊断和优化建议。ADDM 的一种特殊模式可以分析 Oracle RAC 数据库并报告影响整个集群的问题和影响单个实例的问题。

    该功能可帮助调整全局资源 (例如 I/O 和互连通信量),并使 Oracle RAC 数据库的调整更方便、更精确。

  • Oracle 数据库现在可以自动检测高负荷 SQL 语句,然后通过创建适当的 SQL 概要文件在维护时段中自动微调这些语句。它还主动发出创建新的访问结构 (例如索引) 的建议,这些结构可以大大改进高负荷 SQL 语句的性能。

  • 如果禁用了流进程,则会自动生成预警。系统还会基于用户定义的关键流度量阈值生成预警。这些预警为流管理员提供关于关键流组件的信息。

与内存相关的增强
  • “自动内存管理”实例可针对“内存大小 (SGA 和 PGA)”进行调整,根据需要在系统全局区 (SGA) 和聚集程序全局区 (PGA 聚集) 之间重新分配内存。“内存大小 (SGA 和 PGA)”初始化参数是动态的;您可以随时更改该值,而无需重新启动数据库。选择“自动内存管理”选项之后,数据库实例将自动管理 sga 和 pga 大小。

  • 以前,PL/SQL 高速缓存的 SQL 游标数由 OPEN_CURSORS 确定。在 11g 中,高速缓存的游标数由 SESSION_CACHED_CURSORS 确定。请参阅 Oracle Database Reference 手册。

  • 必须增加 SHARED_POOL_SIZE 以包含共享池开销所需的空间。

  • DB_BLOCK_SIZE 的默认值因操作系统而异,但通常为 8KB (在以前的发行版中通常为 2KB)。

事务处理和空间
  • 现在,默认情况下启用“自动还原管理 (AUM) 默认设置”。提供了一个 PL/SQL 过程以帮助正确为每个单独的环境调整还原表空间的大小。要升级到新发行版的数据库可以无缝地移植到 AUM。

  • “分区对象的统计信息收集”是增强的统计信息收集过程,可以大大提高分区对象的统计信息收集的速度和准确性。

  • 通过“简化的临时空间管理”,DBA 可以容易地确定使用了多少临时空间,谁在使用它,以及是否需要更多空间,从而简化了临时空间的管理。该功能可帮助减少由于临时空间配置不足而生成的错误,并可识别应用程序设计问题 (例如失控查询)。

Oracle 基目标和诊断目标配置
  • 您在 DBCA“交互阶段”为 ORACLE_BASE 指定的目录作为 DIAGNOSTIC_DEST 参数存储在 Oracle 主目录清单中,并在随后的目录创建过程中使用。(默认值为 $ORACLE_BASE 目录。) 另外,在 ADD INSTANCE 操作期间,DBUA 假定 ORACLE_BASE 值在所有节点上相同,并在所有节点上验证该值。

  • 诊断目标位置包含所有 ADR 目录 (预警日志等诊断文件以及其他)。将 11g 发行版之前的 Oracle 数据库升级到 11g 和更高发行版数据库时,需要该诊断目标目录。如果 Oracle 基目录已存在,则 Upgrade Assistant automatically 自动检索该信息,并预先填充其路径。

  • 从 Oracle 数据库发行版 11g 开始,后台转储、用户转储和核心转储目标的初始化参数设置被诊断目标取代。

XE 升级
  • 对于单实例数据库,使用 Database Configuration Upgrade Assistant (DBUA) 配置实用程序可以从 Oracle Database Express Edition (Oracle Database XE) 升级为 Oracle 数据库 11g。DBUA 可确定数据库是否为 XE 数据库

  • XE 数据库文件驻留在路径 ORACLE_BASE/oradata/XE 下。这些文件必须复制到新位置,因为用户在升级之后可能会删除 XE 主目录。

将数据文件移动到 ASM、SAN 和其他文件系统中
  • 在升级过程中,您可以将数据文件移动到 ASM、OFS 或其他存储设备 (如存储区网络 (SAN) 和网络区存储 (NAS)) 中。如果在升级期间移动数据库文件,则可以通过重新平衡磁盘和将文件移至更好的存储设备 (如 SAN、NAS 或 ASM),从减少该表空间的典型停机时间获益。

升级/降级
  • 您可以基于从其升级数据库的原始版本,将主要发行版和补丁程序集发行版都进行降级。支持将主要发行版往回降级到 10.2 和 10.1。支持将补丁程序集往回降级到 11.1 补丁程序发行版之前的所有版本。
    请注意,从 Oracle Database Express Edition 升级的数据库无法降级。
    您只能降级到从该发行版进行升级的发行版。例如,如果您从 10.1 升级到 11.1,则无法降级到 10.2,而只能降级到 10.1。

  • 如果 Oracle10g 发行版 1 (10.1) 数据库的发行版本号低于 10.1.0.5,则在降级之前,应当安装发行版 10.1 的最新补丁程序。同样,如果 Oracle 10g 发行版 2 (10.2) 数据库的发行版本号低于 10.2.0.3,则在降级之前应当安装 10.2 的最新补丁程序发行版。请注意,您可以从 10.1 或 10.2 的任何补丁程序发行版进行升级,但在降级之后,应当在要使用的 ORACLE_HOME 中安装最新的补丁程序发行版。

  • 在 Oracle 数据库发行版 10.1.0.6 和 10.2.0.4 之前,数据库中的消息传送网关或工作区管理器都不属于 Oracle 数据库补丁程序集。因此,在降级之前,您必须分别将所有相关补丁程序应用于 10.2.0.3 或 10.1.0.5 ORACLE_HOME。

  • 日志文件的最小大小和默认大小都增大了。现在,最小大小为 4 MB,默认大小为 50MB。有一种情况例外,即在使用 Oracle 管理的文件 (OMF) 时默认大小为 100 MB。

用于自动扩展系统文件的命令行选项

  • 命令行选项 AUTOEXTEND 可促使在升级过程中自动扩展数据文件。此选项可以在升级过程中自动扩展数据文件,并在升级之后将自动扩展结果回退到其原始设置。如果磁盘上有足够空间,且您不需要添加新的数据文件或手动增加文件大小,则可以使用此选项。

相关主题

Database Upgrade Assistant 概览

版权所有 © 1998,2008,Oracle。保留所有权利。