Oracle10g OEM的配置与应用
2012-08-15张洋
张 洋
(中国海洋大学信息科学与工程学院 山东 青岛 266100)
0 引言
在维护设备的过程中,我们常常会涉及到对Oracle数据库的一些基本操作。然而,当我们想更深入了解它时,Oracle的复杂性以及UNIX系统人机界面的单调性却总是令我们感到难以上手。本文将介绍如何通过Oracle企业管理器对数据库进行监控与操作以及如何在UNIX环境下配置使用Oracle10g企业管理器。
1 OEM简介
1.1 OEM概述
Oracle Enterprise Manager(Oracle企业管理器,简称OEM)是通过一组Oracle程序,为管理分布式环境提供管理服务。它为管理员提供了一个基于Internet标准的管理框架,一个稳定的控制台程序,一组实用的管理工具。
OEM控制台与每一个服务器上的智能化代理(Intelligent Agent)相对应。 智能化代理能够监控系统的特定事件并且执行任务(作业)就象你在系统本地一样。事件和作业的结果会被送回控制台,这样DBA就可以从任何可以访问Web应用的位置通过OEM对数据库和其他服务进行各种管理和监控操作。
1.2 OEM的功能
实现对Oracle运行环境的完全管理,包括Oracle数据库、Oracle应用服务器、HTTP服务器等的管理;
实现对单个Oracle数据库的本地管理,包括系统监控、性能诊断与优化、系统维护、对象管理、存储管理、安全管理等;
实现对多个Oracle数据库的集中管理。
2 OEM的应用
2.1 OEM的用户与登录
OEM管理员是可以登录到OEM控制台,并执行设置封锁期、电子邮件通知调度、设置首选身份证明等管理任务的数据库用户。在默认情况下,只有SYS,SYSTEM和SYSMAN三个数据库用户才能登录和使用OEM控制台。其中,SYSMAN用户是OEM控制台的超级用户,是在安装OEM的过程中创建的,用于执行系统配置、全局配置等任务。通常需要创建其他普通的OEM控制台管理员,进行OEM控制台的日常管理和维护工作。
2.2 OEM的属性页
OEM登陆后即进入其主目录页面,该页面用来显示数据库运行状态的信息。点击“性能”,即进入“性能”属性页,通过该页面可以实时监控数据库服务器运行状态,提供系统运行参数。通过“管理”属性页,可以配置和调整数据库的各个方面,以提高性能和调整设置。通过“维护”属性页,可以实现数据库的备份与恢复,将数据导出到文件或从文件中导入数据,将数据从文件加载到Oracle数据库中,收集、估计和删除统计信息,同时提高对数据库对象进行SQL查询的性能。
2.3 小结
通过以上的介绍,我们不难看出OEM具有非常强大的功能和极为友好的人机交互界面。利用OEM,在数据库维护过程中,我们可以以极低的成本和极小的复杂性换取高可用性、可伸缩性和极佳的服务性能;在数据库的查询操作中,我们可以很直观的看到数据库中所有的表、视图、索引等,以及其中所包含的所有字段,操作简便,结果显示清晰明了,格式化效果好。所以,OEM为我们学习、维护Oracle数据库提供了有力的技术支持。
3 OEM的配置
在人机界面以命令行方式为主的UNIX系统环境下,单调、抽象的操作方式无疑给我们对数据库的维护增添了不少困难,而集成了强大功能的OEM就是我们的“答案”。这里我们结合OEM的三层框架结构,总结一下在UNIX环境下OEM的配置过程。
3.1 三层框架结构
Oracle企业管理器的不同于以往的客户-服务器结构,具有三层框架结构,即客户层、管理服务层和节点层。
客户层
客户层又可称为应用层或者交互层,相当于客户端。在这一层上可运行控制台程序、管理工具以及各种客户应用程序,并且可以有多个控制台程序同时运行。具有图形界面的控制台程序极大的方便了数据库管理员。
管理服务层
管理服务层由管理服务器和资料档案库组成。其中Oracle管理服务器是整个企业管理器三层框架结构的核心,由它来提供管理的账户、处理进程,以及作业、事件等管理功能。资料档案库主要是用来存放所有的系统信息、应用程序信息、被管理节点的状态信息,以及系统管理工具包的信息。Oracle管理服务器有一项最重要的职能就是把一个任务分配给多个智能代理来执行。
结点层
结点层由若干个结点组成,一个结点可以是一个数据库,还可以是其他类型的对象或者目标。在各个结点上都运行有智能代理,负责该结点的本地处理及监控。智能代理的运行独立于数据库及结点中的其他对象或目标,独立于控制台,独立于管理应用程序,并且独立于Oracle管理服务器。这样做的一个好处就是:当整个系统其他部分变得不可用时,智能代理还能够独立的运行。
3.2 在UNIX下配置OEM
3.2.1 配置节点层
为了管理结点和结点上的oracle服务,必须在结点上配置并运行一个智能代理。
①运行root.sh:
每一次oracle安装之后,都必须运行root.sh脚本。该脚本设置了智能代理的执行文件的访问权限。 此脚本还创建或更新智能代理所用来确定是否系统上的所有数据库都可以发现的oratab文件。验证oratab文件列出了系统中的每个数据库,并且遵循了正确的语法。 root.sh shell脚本文件应当已经写下了Oracle Home和SID的值。
②检查dbsnmp的文件访问权限:
为了验证root.sh已被成功的执行了,检查dbsnmp的文件访问权限:
$cd$ORACLE_HOME/bin
列出关于dbsnmp的相关详细信息:
$ls-al dbsnmp
如果dbsnmp的所有者是root,访问权限是-rwsr-xr-x,说明root.sh被成功的执行了。
③在Unix上启动智能代理:
在UNIX系统上,智能代理是由"lsnrctl"程序来启动和停止dbsnmp进程的。
3.2.2 配置Oracle管理服务层
Oracle管理服务器(OMS)提供了在EM客户端和被管理结点之间的集中控制。 OMS要有一个EM库(Repository)来存储所有的系统数据,应用数据和环境中被管理结点的状态。
①检测是否启动OEM服务
这里显示警告,提示需要添加或者重新建立库。我们可以通过运行企业管理器配置助理来完成创建。
3.2.3 配置客户层
从Oracle10g开始,Oracle极大的增强了OEM工具,并通过服务器端进行EM工具全面展现。在10g中,客户端可以不必安装任何Oracle客户端工具,仅凭浏览器就可以调用强大的EM工具。
①启动EM工具控制台
在Server端,可以通过如下命
令启动EM工具控制台:
$emctl start dbconsole
②访问EM工具控制台
启动完成后,我们就可以通过在浏览器端输入相应的url访问EM工具控制台了。
4 结束语
Oracle OEM是一个基于Java框架开发的集成化管理工具,它为数据库管理员提供了一个功能强大、界面友好的数据库管理平台。通过它,我们可以更加准确、更加深入的认识Oracle数据库,为保障设备安全运行打下扎实的基础。