Oracle Enterprise Manager (OEM)通过一组Oracle程序为管理分布式环境提供管理服务。OEM包含一组DBA工具、一个存储库,
和图形显示控制台。OEM控制台对应于每个服务器上的IntelligentAgent。
智能代理可以监视系统中的特定事件并执行任务(作业),就像您在系统本地一样。事件和作业的结果将被发送回控制台,以便可以在一个位置管理所有系统。
与ServerManagerMotif相比,OEM具有以下优势:
1)从应用范围来说,OEM可以同时监控和管理多个系统上的多个数据库,因此特别适合分布式环境;ServerManager只能监视和管理一个数据库。
2)从管理对象来看,OEM可以监控管理节点、数据库和监听器,而ServerManager只能监控数据库。
3)从适用的版本来看,OEM可以同时监控和管理Oracle7.x和8.x,但是从版本8开始,ServerManager就不存在了。
本文主要介绍OEM的一些常见问题及其解决方法。
问:Q:OEM数据库工具集的功能是什么?
答:OEM数据库工具集是一组工具,使DBA能够通过GUI界面管理Oracle数据库。包括以下工具:
DataManager:这个工具使您能够像加载数据一样导出/导入数据。
SchemaManager:这个工具使您能够管理数据库中的对象。可用于创建、修改和删除表、索引、视图、快照、序列等。
SecurityManager:这个工具使您能够管理用户、角色、权限和配置文件。
StorageManager:这个工具允许您创建和修改表空间、数据文件和回滚段。
InstanceManager:这个工具允许您关闭、启动实例以及存储和管理数据库参数。
SQL*Worksheet:该工具使您能够运行或创建SQL脚本,并将它们存储在硬盘上。您可以使用此工具来重现上一次执行的语句;同时,检查屏幕上显示的执行结果。
BackupManager:这个工具允许您管理Oracle7和Oracle8数据库的备份和恢复。在Oracle7中,该工具支持EnterpriseBackupUtility(EBU)。
在Oracle8中,该工具支持recoveryManager。
SoftwareManager:这允许您将远程软件安装到支持此功能的远程服务器上。
问:作业状态已提交,尚未更改为已计划。
答:作业在OEM控制台中创建,并通过SQL*net发送到智能代理。一旦智能代理接受作业请求,它将向OEM控制台发回通知,并且状态将变为“已调度”。
如果状态从未从“已提交”更改为“已安排”,则座席可能尚未收到作业请求。
确定代理是否已启动,以及SQL*net和OEM是否已正确配置。
问:作业状态已被调度,尚未更改为正在运行。
A:当代理程序开始运行作业的时候,会发送一个通知回到OEM控制台,状态变化到'已发送'或'启动'。如果作业状态一直为预定而无变化,那可能是代理程序不能打开一个socket回到OEM控制台,
原因可能是TCP/IP问题或代理程序没有足够权限去派生一个进程来运行作业。
在服务器端使用主机名来Ping控制台,以此确定TCP/IP不存在问题;确认运行作业的数据库用户具有dba,connect,resource权限。
Q:运行作业出错,错误信息为:'FailedtoAuthenticateUser'。
A:在NT系统上,你必须把'Logonasabatchjob'权限授予登录用户,然后在OEMPreferredCredentials中设置此用户。
如果代理程序是一个7.3.x的代理程序,那这个用户必须是一个本地的NT用户,不能为一个DOMAIN用户。
在Unix系统上,代理程序的权限应为:-rwsr-xr-xrootdba dbsnmp's'权限意味着dbsnmp进程将用root用户的权限运行。
当这权限设置以后,作业将由在OEM控制台的PreferredCredentials窗口中设置的用户运行。
确认在OEM控制台的PreferredCredentials窗口中设置的用户在服务器上有合适的登录权利。
Q:客户能创建自己定义的事件吗?
A:在OEM1.x中,客户不能创建自己定义的事件。这将是OEM2.x的一个新特性。
然而,你能创建一个运行TCL脚本的作业,能通过使用TCL命令orareportevent触发一个事件。有关orareportevent的进一步信息,请参阅OEM应用开发者手册
Q:在控制台上,数据库显示为红色的圆圈和斜线,表示数据库已关闭;然而,数据库是正在运行的。
A:如果数据库,监听进程或节点显示为红色的圆圈和斜线,OEM控制台是在试图通知你服务已关闭。如果服务未关闭,你需要在事件窗口中单击'OutstandingEventstab'并将通知移动至历史记录,
这应该从导航(navigator)和地图(map)窗口中清除关闭提示。
Q:怎样创建OEMRepository?
A:OEMRepository是在Oracle7或Oracle8数据库中的一组表,这些表存储了通过OEM控制台图形化浏览的信息。在OEM1.x结构中,
这些表存储在一个特定的用户下并且不能与另外的用户共享。在OEM1.2.x,应该用一个非'system'用户登录来运行脚本SMPCRE.SQL,此用户必须有connect,
resource和dba权限。在OEM1.3.x,初次激活OEM控制台图标时将自动地创建Repository。如果已存在一个早期版本repository,会提示更新表;如果没有OEM表,会提示创建表。
Q:怎样自定义OEM工具栏?
A:如果要设定OEM工具栏,应在工具栏上按右键;选择Customizetab。你能编辑工具栏项目的名字,删除项目,或添加项目。如果在Databasetab上单击,
可以进入logoncredentials,为每数据库选择一个默认值输入项.
Q:当登录至OEM控制台时,得到以下错误信息:
VOC-00002:Failuretoobtaininterfacelogin
A:原因是OEM通信后台进程不能打开一个与Repository的连接。
确认TCP/IP配置正确,以及是否通信后台进程的缺省参数已被修改(使用DaemonManager)。
Q:当使用OEM控制台时,得到以下错误信息:
VOC-00107:FailuresettingcredentialdetailsORA-03114:Not connectedtoORACLE
A:原因是OEMRepository所在数据库已关机,或是连接数据库的服务发生了网络故障。
Q:当使用SYSDBA登录至OEM控制台时,得到以下错误信息:
VOC-00121:Failureupdatingorinsertingauserdetailentry ORA-00942:Tableorviewdoesnotexist
A:用户登录至OEM控制台的缺省角色是NORMAL,如果你需要作为SYSDBA连接,应该在PreferredCredentials窗口中设置CONNECTASSYSDBA选项。