`
yangzb
  • 浏览: 3502845 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Oracle 10g最佳20个新特性

阅读更多
Oracle 10g最佳20个新特性
文章出处:转载 作者:不详 发布时间:2005-11-11
答案依 DBA 的工作经验而有所不同。大部分高级管理员偏爱简单的命令行 SQL*Plus(我的个人偏好),而其余的人则偏爱使用一些第三方产品。但是,同一个问题在入门级 DBA 那里却得到了不同反应:在这一群体中,Enterprise Manager (EM) 显然是他们的选择。

这 些偏好不难理解。Oracle Enterprise Manager 自从几年前推出以来一直不断进行完善,它开始时是字符模式显示的 SQL*DBA,随后发展为基于操作系统的客户端工具,最后具有了Java 风格。EM 提供的信息非常详细,足够完成大多数 DBA 任务,可作为不愿或者无暇了解新语法并且希望使用 GUI 工具来管理常见数据库任务(如添加用户、修改数据文件和检查回退段)的用户的解决方案。诊断程序包为性能调节提供了非常需要的 GUI 支持。

但是,阻碍 EM 广泛使用的一个主要问题是它无法跟上数据库服务器本身的发展。例如,EM 的 Oracle9i 数据库版本不支持子分区(该特性在 Oracle8i 中首次引入)。

Oracle 数据库 10g 中的 EM 新版本改变了这种情况。它具有新的体系结构和新的界面,而最重要的是,它具有一个功能非常强大而完善的工具箱,提供从初学者到高级用户所需的所有 DBA 技能集。而最好之处在于,它是安装本身的一部分,无需额外费用。如果您正在评估第三方工具,您当然可以将 EM 加入评估行列中,从而使竞争更加激烈。即使您是那种“笃信命令行”的 DBA(象我这样),您也会非常欣赏 EM 在某些情况下能为您所提供的帮助。

在本文中,我将为您介绍新的 EM。由于该工具所涉范围甚广,因此不可能在此讨论所有的特性;我将在此介绍几个基本特性,并提供其他材料的线索。我将遵循本系列之精神提供实际的示例,演示如何使用该工具解决实际问题。

体系结构

缺省情况下,在安装 10g 软件时,即安装 EM 10g时,在概念上它与以前版本的不同之处在于,它不是客户端安装的工具;实际上它是位于数据库服务器本身上的 HTTP 服务器(称为 DB 控制台)。(参见图 1。)您可以使用任何浏览器查看 EM 界面。

 

图 1:EM 体系结构

DB 控制台的端口号可在 $ORACLE_HOME/install/portlist.ini 中找到。以下是一个文件的示例;对于您来说,端口可能不相同。

Ultra Search HTTP port number = 5620

iSQL*Plus HTTP port number = 5560

Enterprise Manager Agent Port =

Enterprise Manager Console HTTP Port (starz10) = 5500

Enterprise Manager Agent Port (starz10) = 1830

从这个文件中我们了解到,数据库 starz10 的代理程序监听端口 1830,而 EM 控制台监听 5500。我们可以通过输入以下 URL 来调用 EM 登录画面:

http://starz/em/console/logon/logon

该 URL 调出登录画面,从中您可以以 DBA 用户登录。在我们的示例中,我们将以 SYS 登录。

主数据库主页

登录后即出现主数据库主页。主页的上部提供对重要细节的快速浏览。(参见图 2。)

 

图 2:主数据库主页(上部)

在上图中已圈出了最重要的一些部分,并用本文中编号的引用对其进行了标 注。首先,请注意标为“General”(1) 的部分;这一部分显示了有关数据库的一些最基本细节,如数据库从 3 月 20 日起已经启动,以及实例名称等。Oracle Home 显示为一个超链接,当单击该链接时,将显示所有产品以及共享该主目录的所有其他 Oracle 数据库。Listener 的超链接显示注册到监听器(其名称就显示在紧靠它的下方)的所有数据库和实例。最后,显示主机名 (starz)。

在 名为 “Host CPU”(2) 的部分中,醒目地显示了 CPU 的详细信息。“Active Sessions”(3) 部分显示了活动的会话及其当前状态 (4)。从上面我们看到,99% 的时间被处于等待状态的会话所占用。(我们稍后将找出导致这些等待的原因。)“High Availability”(5) 部分显示了与可用性相关的信息。例如,“Instance Recovery Time”的值(实例的 MTTR Target 的值)确定实例崩溃恢复可能需要的时间。

“Space Usage”(6) 部分很有趣:它显示与 23 个段相关的警告。(同样,稍后再详细介绍这些警告。)“Diagnostic Summary”(7) 部分提供数据库良好运行的概要信息。所发现的性能问题的数量表示自动数据库诊断监控程序 (ADDM) — 在 10g 中新增的自诊断引擎 — 主动识别出多少问题。EM 还自动分析您的环境,以确定是否违反了所建议的最佳实践;此分析的结果显示在“Policy Violation”部分。最后,EM 扫描警报日志,并显示任何最新的 ORA 错误。这种信息非常有价值 — 在警报日志中自动扫描 Oracle 错误使您避免了手动搜索这些错误的很多麻烦。

在数据库主页的下部,如图 3 所示,我们可以更详细地查看其中的一些消息。“Alerts”(1) 部分显示了需要您注意的所有相关警报,每个警报都可以方便地进行配置。以第一个警报 (2) 为例,它显示 Archiver 进程因为某种原因而挂起。当然,下一步就是确定其原因。要查明原因,只需单击它即可。您将从包含该错误的 alert.log 文件中获得更多详细信息。在此情形下,故障点是一个已经填满的闪回恢复区;我们只需将其清空,Archiver 即可重新开始工作。

 

图 3:主数据库主页(下部)



另一个警报 (3) 是有关等待的:数据库在 69% 的时间中等待一个与等待类“Application”相关的等待。还记得主页上部是如何显示一个会话处于等待状态的吗?这个警报向我们显示它正在等待什么。单击超链接将会立即为您显示实际的等待。

下一个警报 (4) 显示一个审计项目,即用户 SYS 从特定的客户端机器连接到数据库。同样,通过单击超链接,您可以显示有关该连接的所有详细信息。最后一个警报 (5) 显示某些对象无效。单击超链接,您将转到对象被验证无效的画面。

如您所见,数据库主页犹如显示需要您注意的所有事项的仪表板。该界面没有将详细信息堆积在屏幕上,其界面相当简洁,只需单击即可获得这些详细信息。您可以手动搜集所有这些信息,但这可能会花费很多时间和精力。EM 10g 提供了随取随用的解决方案。

 

一般应用

让我们来看看如何使用新的 EM 来完成一些较常见的任务。

一项常见的任务是变更表及 其相应的索引。在数据库主页,如图 3 所示选择“Administration”选项卡,并引用标记为 6 的项目。在本页中,您可以管理数据库来配置回退段、创建表空间和模式对象、设置资源管理器、使用新的调度程序(将在以后的文章中介绍)以及更多事项。在此 处选择“Tables”,这将调出如图 4 所示的画面。


图 4:表管理



注意红色圆圈中高亮显示的手电筒标志;这是用于调出数值列表的按钮。在图中所示画面中,您可以单击 LOV 标志,调出数据库中的用户列表,并从列表中选择一个用户。单击按钮“Go”,出现该用户的表的一个列表。您还可以使用“%”符号指定通配符 — 例如,通过使用 %TRANS%,可以找出名称中带有单词 TRANS 的所有表。

让我们来看一个示例。选择表 TRANS,更改其中的一列。单击超链接,调出如图 5 所示的“编辑表”画面。


图 5:表管理



如果您要将列 ACTUAL_RATE 从 NUMBER(10) 改为 NUMBER(11),则可以更改数字(引用 1),然后单击“Apply”。要查看完成该任务的实际 SQL 语句,可以单击按钮“Show SQL”。

在 同一画面上还可以获得另一条重要信息:增长趋势。您将在以后一篇有关段管理的文章中了解到,观察一段时间内的对象增长情况是可能的。该画面提供了相同的信 息,但却是以图形方式表示的。要查看该画面,可单击选项卡“Segments”(图 5 引用 2)。该操作调出段画面,如图 6 所示。


图 6:段画面



注意红色圆圈中标记的项目。该画面显示有多少空间分配给段 (2)、实际使用了多少 (1) 以及浪费了多少 (3)。在该画面的下部 (4),您可以看到一幅有关对象所用空间以及分配给对象的空间的图形。在本示例中,表的使用模式已经稳定 — 因此是直线。

您可以对表执行其他管理操作,方法是使用那些用于该目的的选项卡,如用于管理约束的“Constraints”。

使用 EM 进行性能调节

到目前为止您已经了解到,虽然 EM 的外观已经更改,但它提供了至少与以前的 Java 版本同样多的功能。但是,与后者不同的是,EM 现在还支持更新的 Oracle 数据库功能。例如,EM 现在能够处理子分区。

但 是,有经验的 DBA 希望这种工具能完成更多的工作 — 尤其是在故障诊断或主动性能调节方面。让我们举个例子。回忆前文中我们的数据库正在“Application”等待类上处于等待状态,如数据库主页所示 (图 3 引用 3),而我们需要诊断其原因。在任何调整过程中需要了解的关键事情之一是有多少种组件(如 CPU、磁盘和主机子系统)在相互作用,这样有助于在上下文环境中综合观察所有这些变量。为此,可在数据库主页中选择“Performance”选项卡。 此操作调出如图 7 所示的画面。


图 7:“Performance”选项卡



请注意所有量度已在同一时间轴上对齐,这样更容易观察它们的相互依赖性。注意尖峰 (3),它对应于调度程序任务。它表明,在该时刻约有七个会话正在等待与调度程序相关的等待事件。那么,影响因素是什么?注意处于同一位置(绿色区域)的 CPU 量度 — 它们显示了曾经使用过的最大 CPU 使用率,在图形中以虚线 (4) 表示。在该点前后,我们没有看到 CPU 尖峰出现,这就提供了一条线索。注意 CPU 运行队列长度中的尖峰 (1),这是调度程序的直接后果,调度程序可能产生了过多的内存需求,导致增加了分页活动 (2)。如您所见,所有现象集中在一起,促进了对数据库负载“概况”的了解。

注意在时间轴末尾的尖峰 — 增加了运行队列长度 (5) 和分页速率 (6)— 它们与物理读取的另一个尖峰相关 (7)。原因是什么?

通过比较图形“Sessions:Waiting and Working”与尖峰发生的时间,我们可以看到,大部分会话都在“Application”等待类上进行等待。但是我们需要确切地查明它在该时期内正在 等待什么?单击该时间的区域,调出活动会话画面,如图 8 所示。


图 8:活动会话等待



该画面显示会话正在等待的等待事件是 enq:TX ?row lock contention。那么导致此问题的 SQL 语句是什么?很简单:画面本身显示了语句 8rkquk6u9fmd0 的 SQL ID(在红色圆圈中)。单击该 SQL ID,调出如图 9 所示的 SQL 画面。


图 9:SQL 详细信息



在该画面上,您可以看到关于它的 SQL 语句以及相关的详细信息,包括执行计划。它表明,这条 SQL 导致行锁争用,因此应用程序设计可能是问题的根源。

栓锁争用

假设单击“Performance”选项卡出现类似图 10 所示的画面。


图 10:“Performance”选项卡,示例 2



在图中,请注意红色矩形中高亮显示的量度。您可以看到在 12:20AM 左右有很多与 CPU 相关的等待,这导致在 CPU 中出现庞大的运行队列。我们需要诊断这一等待。

首先,单击显示 CPU 争用区域的图形(在图上标有“Click Here”),以详细查看该特定等待,如图 11 所示。


图 11:活动会话等待



注意在“Active Sessions Working:CPU Used”图形中带阴影的框 (1)。您可以使用鼠标拖动它来放置焦点。此操作导致以下的饼形图(2 和 3)只在该框所包含的时段内进行计算。在这里我们看到,一个具有 id 8ggw94h7mvxd7 的特定 SQL 正在非常困难地运行 (2)。我们还看到,具有用户名 ARUP 和 SID 265 的用户会话是最主要的运行会话 (3)。单击该会话,查看其详细信息。此操作调出“Session Details”画面。单击选项卡“Wait Events”,调出该会话所经历的等待事件的详细信息,其画面类似于图 12 所示。


图 12:等待事件的详细信息



在该画面中,请注意在红色圆圈中高亮显示的 118 厘秒的最长等待,它在等待库高速缓存。当您单击“Latch:Library Cache”的超链接时,将会看到类似图 13 所示的画面。


图 13:等待直方图



该画面提供了 10g 数据库之前所没有提供的一些独特信息。在诊断这个栓锁争用问题时,如何知道这 118 厘秒的等待是由几个会话中的多个小等待组成,还是只是由一个会话中的一个大等待组成,从而使数据出现偏差呢?

在这里,直方图可以帮助我们。从图上看,您知道大约 250 次会话拥有 1 毫秒的等待(在圆圈中高亮显示)。会话在 4 与 8 毫秒之间的某处等待了大约 180 次。该画面显示,这些等待的时间通常很短,因而它们不是栓锁争用的主要症状。

在 数据库主页上,您可以通过单击标为“Advisor Central”的选项卡来访问 ADDM、SQL Access Advisor 以及其他顾问程序。ADDM 在收集量度时自动运行,并且结果立即发布在 Advisor Central 页中;当单击该页时,将显示由 ADDM 给出的建议。SQL Tuning Advisor 也检查这些量度,并在此页上发布其建议。(我们将在以后的文章中更加详细地研究 ADDM 和 SQL Tuning Advisor。)

简化维护

数据库主页上标为“Maintenance”的选项卡是常用维护活动 — 如备份和恢复、数据导出或导入(数据泵)、数据库克隆以及更多活动 — 的启动控制台。在该画面上,您还可以对策略验证警报所基于的最佳实践的基本原理进行编辑。

结论

如先前所述,这篇文章所涉及的只是巨大冰山的一角。在本文中,我的目的不是为了提供全面的概述;而是希望提供对一些跨多个技能集的特定活动的快速浏览。

分享到:
评论

相关推荐

    ORACLE11g研究新特性

    本资源详细探讨了Oracle 11g的关键新特性,对于深入理解这一数据库管理系统具有极大的价值。 1. **Real Application Clusters (RAC)增强** Oracle 11g的RAC功能得到了显著提升,增强了集群的可用性和性能。新特性...

    官方资料:Oracle 11g数据库新特性与升级最佳实践.pdf

    官方资料:Oracle 11g数据库新特性与升级最佳实践 详细介绍Oracle11g新特性:– 分区、– Active DG、– 闪回、– RAC、– 安全、– 压缩、– RAT、– OEM 12c、– 其它:• 11g升级最佳实践、– 升级路径、– 最近...

    Oracle 10G 20個新特性

    10. **其他最佳特性**:第20周的文档可能会涵盖一些未在前面章节中详细讨论但同样重要的新特性,如数据泵增强、快速恢复区(Fast Recovery Area, FRA)、数据加密等。 Oracle 10G的这些新特性为DBA提供了更强大的...

    Linux下Oracle 10g安装

    - 自动存储管理(ASM)是Oracle 10g推出的新特性,它允许数据库管理员通过一个统一的接口管理存储设备,简化了存储配置和管理。 5. 其他相关操作 安装Oracle数据库之后,可能还需要了解如何进行一些基本的管理操作...

    Oracle 11g数据库新特性与升级最佳实践

    ### Oracle 11g数据库新特性与升级最佳实践 #### Oracle 11g数据库新特性 **1. 分区** 自Oracle 8数据库以来,分区技术一直是Oracle数据库的重要组成部分,经历了十年的持续创新。Oracle 11g进一步扩展了分区功能...

    ORACLE 10G OCP 题库

    Oracle 10g是Oracle数据库的一个重要版本,它引入了许多新的特性和改进。其中,Real Application Clusters (RAC) 支持多节点集群环境,提供高可用性和负载均衡;Automatic Storage Management (ASM) 提供了一体化的...

    Oracle+10G+最佳20位新特性:SQL+Advisor+和+ADDM_IT168文库

    Oracle数据库10g版本引入了许多新的特性和改进,其中20个最出色的新特性包括了SQL Advisor和ADDM(自动数据库诊断监视器)。这些特性共同助力数据库管理员和开发者以更加高效和智能的方式管理数据库。以下是对Oracle...

    ArcSDE For Oracle 10g

    Oracle 10g引入了许多新特性,包括自动存储管理(ASM)、实时应用集群(RAC)、数据屏蔽和透明数据加密等,提升了数据库的性能、可用性和安全性。 **3. 安装过程** 安装ArcSDE for Oracle 10g通常涉及以下步骤: - ...

    ArcSDE 10.2 FOR Oracle10g、11g安装包

    ArcSDE 10.2 for Oracle 10g 和 11g 是Esri公司提供的一个关键组件,用于在Oracle数据库系统上管理和操作地理空间数据。这个安装包专为Windows平台设计,允许用户在Oracle数据库环境中高效地存储、管理和共享GIS...

    Oracle 10g简明教程

    Oracle 10g是Oracle公司推出的数据库管理系统的一个重要版本,主要针对企业级应用提供高效、稳定的数据存储和管理服务。本教程将深入浅出地介绍Oracle 10g的基础知识和核心功能,帮助读者掌握这一强大的数据库系统。...

    oracle10G集群

    Oracle 10G 集群是Oracle数据库的一个高级特性,它提供了高可用性和可扩展性,使得在多个服务器之间共享数据库资源成为可能。Oracle Real Application Clusters (RAC) 是Oracle 10G集群的核心组件,允许多台服务器...

    Oracle10g技术文档

    Oracle10g是Oracle数据库的一个重要版本,发布于2003年,它引入了许多创新技术和功能,旨在提高性能、可扩展性和管理效率。在这个"Oracle10g技术文档"中,我们可以期待涵盖以下几个关键领域的详细知识: 1. **...

    Oracle10g培训PPT

    这个"Oracle10g培训PPT"很显然是一份深入讲解Oracle 10g特性和使用的教学材料,内容全面且详尽。下面将根据这个主题,详细阐述Oracle 10g的一些核心知识点。 一、Oracle 10g简介 Oracle 10g的“g”代表“grid”,...

    Oracle 10g--为DBA提供的最佳前20位的特性(中文 chm)

    这个压缩包文件"Oracle 10g--为DBA提供的最佳前20位的特性(中文 chm)"显然包含了关于这些关键功能的详细解读,帮助DBA们更好地理解和利用Oracle 10g的优势。 1. **Real Application Clusters (RAC)**:Oracle 10g...

    Oracle 10g 安装(Windows下)

    Oracle 10g是一款经典的关系型数据库管理系统,尤其在企业级应用中有着广泛的应用。本文将详细介绍在Windows操作系统下如何安装Oracle 10...在实际操作中,应遵循最佳实践,并持续学习和适应Oracle的新特性和优化方法。

    Oracle 内部培训资料:Oracle 10g 培训材料(18个PPT)

    Oracle 内部培训资料:Oracle 10g 培训材料(18个PPT) 如下: Oracle_数据库_10g性能概述.ppt Oracle_数据库_10g极大提高可用性和网格计算能力.ppt Oracle_数据库_10g的备份与恢复特性-恢复管理器与闪回查询技术....

    Oracle10g网格特性

    总的来说,Oracle10g的网格特性旨在通过整合计算和存储资源,降低硬件、软件和人力成本,提供最高级别的可用性、可靠性和安全性,以及最佳的性能和可伸缩性。同时,Oracle10g还引入了其他新功能,比如Data Guard用于...

    Oracle 10g DBA 手册

    Oracle 10g DBA手册是一本专门为数据库管理员(DBA)准备的参考资料,它涵盖了在Oracle 10g环境中管理和维护数据库所需的各种技术、工具和最佳实践。Oracle 10g是Oracle公司的一个重要版本,提供了许多增强的功能,...

    Oracle10g数据库最佳新特性:等待界面 (2)

    Oracle 10g数据库在等待界面方面带来了显著的改进,为DBA提供了更高效和详细的性能诊断工具。在Oracle 10g中,等待界面经过重新设计,能够提供更多的信息,减少对DBA的干预需求。自动数据库诊断管理器(ADDM)虽然能...

Global site tag (gtag.js) - Google Analytics