oracle常见错误代码.doc_第1页
oracle常见错误代码.doc_第2页
oracle常见错误代码.doc_第3页
oracle常见错误代码.doc_第4页
oracle常见错误代码.doc_第5页
已阅读5页,还剩24页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Oracle常见错误代码的分析与解决 作者:wolf2602发表于:2003-02-16 13:50:07在使用ORACLE的过程过,我们会经常遇到一些ORACLE产生的错误,对于初学者而言,这些错误可能有点模糊,而且可能一时不知怎么去处理产生的这些错误,本人就使用中出现比较频繁的错误代码一一做出分析,希望能够帮助你找到一个合理解决这些错误的方法,同时也希望你能够提出你的不同看法。毕竟作为一种交流的手段,个人意见难免过于偏颇,而且也必定存在着不足,出错之处在所难免。写这篇文章的目的就是想通过相互之间的交流共同促进,共同进步。 ORA-01650:unabletoextendrollbacksegmentNAMEbyNUMintablespaceNAME 产生原因:上述ORACLE错误为回滚段表空间不足引起的,这也是ORACLE数据管理员最常见的ORACLE错误信息。当用户在做一个非常庞大的数据操作导致现有回滚段的不足,使可分配用的回滚段表空间已满,无法再进行分配,就会出现上述的错误。 解决方式:使用“ALTERTABLESPACEtablespace_nameADDDATAFILEfilenameSIZEsize_of_file”命令向指定的数据增加表空间,根据具体的情况可以增加一个或多个表空间。当然这与还与你主机上的裸盘设备有关,如果你主机的裸盘设备已经没有多余的使用空间,建议你不要轻意的增加回滚段表空间的大小,可使用下列的语句先查询一下剩余的tablespace空间有多少: Selectuser_name,sql_textfromV$open_cursorwhereuser_name=; 如果多余的空间比较多,就可以适当追加一个大的回滚段给表空间使用,从而避免上述的错误。你也可以用以下语句来检测一下rollbacksegment的竞争状况: Selectclass,countfromV$waitstatwherecalssin(systemundoheader,systemundoblock,undoheader,undoblock);和 Selectsum(value)fromV$sysstatwherenamein(db_block_gets,consistentsgets); 如果任何一个classincount/sum(value)大于1%,就应该考虑增加rollbacksegment。 相应的英文如下: Cause:Failedtoallocateextentfromtherollbacksegmentintablespace Action:UsetheALTERTABLESPACEADDDATAFILEstatementtoaddoneormorefilestothespecifiedtablespace. ORA-01652:unabletoextendtempsegmentbynumintablespacename 产生原因:ORACLE临时段表空间不足,因为ORACLE总是尽量分配连续空间,一但没有足够的可分配空间或者分配不连续就会出现上述的现象。 解决方法:我们知道由于ORACLE将表空间作为逻辑结构-单元,而表空间的物理结构是数据文件,数据文件在磁盘上物理地创建,表空间的所有对象也存在于磁盘上,为了给表空间增加空间,就必须增加数据文件。先查看一下指定表空间的可用空间,使用视图SYS.DBA_FREE_SPACE,视图中每条记录代表可用空间的碎片大小: SQLSelectfile_id,block_id,blocks,bytesfromsys.dba_free_spacewheretablespace_name=; 返回的信息可初步确定可用空间的最大块,看一下它是否小于错误信息中提到的尺寸,再查看一下缺省的表空间参数: SQLSELECTINITIAL_EXTENT,NEXT_EXTENT,MIN_EXTENTS,PCT_INCREASEFROMSYS.DBA_TABLESPACESWHERETABLESPACE_NAME=name; 通过下面的SQL命令修改临时段表空间的缺省存储值: SQLALTERTABLESPACEnameDEFAULTSTORAGE(INITIALXXXNEXTYYY); 适当增大缺省值的大小有可能解决出现的错误问题,也可以通过修改用户的临时表空间大小来解决这个问题: SQLALTERUSERusernameTEMPORARYTABLESPACEnew_tablespace_name; 使用ALTERTABLESPACE命令,一但完成,所增加的空间就可使用,无需退出数据库或使表空间脱机,但要注意,一旦添加了数据文件,就不能再删除它,若要删除,就要删除表空间。 一个报错例子如下: ORA-1652:unabletoextendtempsegmentby207381intablespaceTEMPSPACE 相应的英文如下: Cause:Failedtoallocateextentfortempsegmentintablespace Action:UsetheALTERTABLESPACEADDDATAFILEstatementtoaddoneormorefilestothespecifiedtablespaceorcreatetheobjectinanothertablespace. ORA-01578:Oracledatablockcorrupted(file#num,block#num) 产生原因:当ORACLE访问一个数据块时,由于1、硬件的I/O错误;2、操作系统的I/O错误或缓冲问题;3、内存或paging问题;4、ORACLE试图访问一个未被格式化的系统块失败;5、数据文件部分溢出等上述几种情况的一种引起了逻辑坏块或者物理坏块,这时就会报ORA-01578的错误。 解决方式:由于ORACLE只有在访问到有问题的数据文件时才会报错,所以报错的时间有可能会比实际出错的时间要晚,如果ORA-01578出错信息提示数据坏块指向的是用户自己的数据文件,则用以下方法来解决: 如果通过下面的SQL语句查出的坏块出现有索引上,则只需重建索引即可 SQLSelectowner,segment_name,segment_typefromdba_extentswherefile_id=andbetweenblock_idandblock_id+blocks-1; (和分别是ORA-01578报出的坏块出现的文件号和块号) 如果坏块出现在表上,先用以下语句分析是否为永久性坏块(建议多执行一两次,有助于鉴别数据坏块是永久性的(硬盘上的物理坏块)还是随机性的(内存或硬件错误引起):SQLAnalyzetablevalidatestructurecascade; 执行该命令后,可能会出现以下的结果: ORA-01578:与原先错误信息有相同的参数,为永久性的物理或逻辑坏块;与原先错误信息有不同的参数,可能与内存,pagespace和I/O设备有关。 如果用户有此表的最新备份,那么最好是用此备份来恢复此表,或者使用event10231来取出坏块以外的数据: .先关闭数据库 .编辑init.ora文件,加入: event=”10231tracenamecontextforever,level10” .startuprestrict .创建一个临时表:SQLcreatetableerrortempasselect*fromerror;(error是坏表的表名) .把event从init.ora文件中删掉并重起数据库 .rename坏表,把临时表rename成坏表的表名 .创建表上的INDEX等 如果ORA-01578出错信息提示数据坏块指向的是数据字典或者是回滚段的话,你应该立即与ORACLE公司联系,共同商量一个好的解决办法。 这里所讲的解决方法只是比较常见的一种,一些更为具体的解决办法可以查看一下ORACLE的故障解决手册,那里面有浞及使用ROWID方法来取出坏块以外的数据的方法,这里就不介绍了。 相应的英文如下: Cause:Thegivendatablockwascorrupted,probablyduetoprogramerrors Action:Trytorestorethesegmentcontainingthegivendatablock,Thismayinvolvedroppingthesegmentandrecreatingit,Ifthereisatracefile,reportthemessagesrecordedinittocustomersupport. ORA-01628:max#ofextentsnumreachedforrollbacksegmentnum 产生原因:这种错误通常为一个回滚段和一个表空间已经达到MAXEXTENTS参数设置的极限。要注意的是这个MAXEXTENTS不是该回滚段或表空间的硬件极限,硬件极限取决于数据库创建时在init.ora文件中指定的DB_BLOCK_SIZE参数的值。 解决方法:使用SQL命令ALTERTABLESPACESTORAGE(MAXEXTENTSXXXX)来增加MAXEXTENTS,其中“XXXX”值必须大于错误信息中所指的数值,但不能大于LARGESTMAXEXTENT的值,如果已经达到了LARGESTMAXEXTENTVALUE,解决的办法就是重新创建较大的范围尺寸,使用带有选项COMPRESS=Y的Export工具导出表,如果表空间有可用空间,先给表做一个备份,用altertablespacetablespace_name更改其名字,然后再装载表回数据库。 查看其错误出现的地方,如果出现在回滚段或索引上,那么必须将其删除并重建,如果出现在临时表空间,修改临时表空间的存储字段,便可解决这个问题。 一个报错例子如下: ORA-1628:max#extents50reachedforrollbacksegmentRBS_1 相应的英文如下: Cause:Anattemptwasmadetoextendarollbacksegmentthatalreadyhasreacheditsmaximumsizeorspacecouldnotbeallocatedinthedatadictionarytocontainthedefinitionoftheobject. Action:Ifpossible,increasethevalueofeithertheMAXEXTENTSorPCTINCREASEinitializationparametersorfindthedatadictionarytablelackingspaceandalterthestorageparameters,asdescribedintheOracle8ServerAdministratorsGuide. ORA-00600:internalerrorcode,arguments:num,?,?,?,? 产生原因:这种错误通常为ORACLE的内部错误,只对OSS和ORACLE开发有用。ORA-600的错误经常伴随跟踪文件的状态转储(系统状态和进程状态),系统状态存储将包括ORACLERDBMS持有的当前对象的信息,进程状态转储则将显示特殊进程持有的对象,当进程符合了某错误条件时,经常是由于一些信息取自它持有的一个块,如果我们知道这些错误进程持有的块,就容易跟踪问题的来源。 解决方法:一般来说出现这个错误我们本身是无法解决的,只有从提高系统本身各方面来解决这个内部问题,如增加硬件设备,调整系统性能,使用OPS(当然OPS从某种意义上说并不是一种好的解决方式)等。ORA-600错误的第一个变量用于标记代码中错误的位置(代码中的每个部分的第一变量都不一样),从第二个到第五个变量显示附加信息,告诉OSS代码在哪里出现了错误。 一个报错例子如下: ORA-00600:internalerrorcode,arguments:1237, 相应的英文如下: Cause:ThisisacatchallinternalerrormessageforOracleprogramexceptions.Itindicatesthataprocesshasmetalow-level,unexpectedcondition.Variouscausesofthismessageinclude: Time-outs(超时) Filecorruption(文件太老) Faileddatachecksinmemory(内存检索失败) Hardware,memory,orI/Oerrors(硬件、内存或者磁盘错误) Incorrectlyrestoredfiles(错误的重建文件) ORA-03113:end-of-fileoncommunicationchannel 产生原因:通讯不正常结束,从而导致通讯通道终止 解决方法:1.检查是否有服进程不正常死机,可从alert.log得知 2.检查sql*NetDriver是否连接到ORACLE可执行程序 3.检查服务器网络是否正常,如网络不通或不稳定等 4.检查同一个网上是否有两个同样名字的节点 5.检查同一个网上是否有重复的IP地址 相应的英文如下: Cause:Anunexpectedend-of-filewasprocessedonthecommunicationchannel.TheproblemcouldnotbehandledbytheNet8,twotask,software.Thismessagecouldoccuriftheshadowtwo-taskprocessassociatedwithaNet8connecthasterminatedabnormally,orifthereisaphysicalfailureoftheinterprocesscommunicationvehicle,thatis,thenetworkorservermachinewentdown. Action:Ifthismessageoccursduringacommectionattempt,checkthesetupfilesfortheappropriateNet8driverandconfirmNet8softwareiscorrectlyinstalledontheserver.Ifthemessageoccursafteraconnectioniswellestablished,andtheerrorisnotduetoaphysicalfailure,checkifatracefilewasgeneratedontheserveratfailuretime.ExistenceofatracefilemaysuggestanOracleinternalerrorthatrequirestheassistanceofcustomersupport. ORA-00942:tableorviewdoesnotexist 产生原因:这是由于装载的表或视图不存在,多半是CATEXP.SQL还没有运行,无法执行Export视图,如果CATEXP.SQL已经运行,则可能是版本错误。 解决方法:因为Import和Export共享的一些视图是通过运行CATEXP.SQL来装载的(它们具有相同的视图),并不生成单独的CATEXP.SQL,因而造成视图与Export代码不同步,较难保持彼此之间的兼容,用户就必须建立自己的Export应用,从而避免ORA-00942的错误。 相应的英文如下: Cause:Thetableorviewentereddoesnotexist,asynonymthatisjnotallowedherewasused,oraviewwasreferencedwhereatableisrequired.Existingusertablesandviewscanbelistedbyqueryingthedatadictionary.Certainprivilegesmayrequiredtoaccessthetable.Ifanapplicationreturnedthismessage,thetabletheapplicationtriedtoaccessdoesnotexistinthedatabase,ortheapplicationdoesnothaveaccesstoit. Action:Checkeachofthefollowing: Thespellingofthetableorviewname. Thataviewisnotspecifiedwhereatableisrequired Thatanexistingtableorviewnameexists. Contactthedatabaseadministratorifthetableneedstobecreatedorifuserorapplicationpriviledesarerequiredtoaccessthetable. Also,ifattemptingtoaccessatableorviewinanotherschema,makecertainthecorrectschemaisreferencedandthataccesstotheobjectisgranted. ORA-01598:rollbacksegment“name”isnotonline Cause:TherollbacksegmentwastakenofflineeithermanuallyorbySMON. Action:CheckthestatusoftherollbacksegmentinDBA_ROLLBACK_SEGS. ORA-1636:rollbacksegment“name”isalreadyonline Cause:Arollbacksegmentcanonlybeusedbyoneinstanceandaninstanceistryingtobringarollbacksegmentonlinethatisalreadyinuse. Action:CheckthatthevaluessetintheinitializationparameterfileforparametersROLLBACK_SEGMENTS,ROLLBACK_SEGMENT_INITIAL,andROLLBACK_SEGMENT_COUNTarecorrectlysetfortheinstancewhiththeproblem,Alsocheckthattheinstanceisusingthecorrectinitializationparameterfile.Makesureyouarenotconfusedaboutthedifferencebetweenprivateandpublicrollbacksegments.SeetheOracle8ServerAdministratorsGuideformoreinformationaboutusingrollbacksegmentsinparallermode. 上述错误均为我们在使用回滚段时比较常见的问题,ORA-01598指明当前使用的回滚段的状态为“notonline”,不能使用,将它改为“online”状态即可使用;ORA-01636指明当前回滚段已经为“online”状态,可以直接使用,不用再集合它。 ORA-1636signalledduring:alterrollbacksegmentrb00online 我们在做统计时还可能遇到下述问题:一个rollbacksegment的状态为”NeedsRecovery”的现象,这是由于ORACLE回退一个事物表中的没有提交的事物时失败所造成的。通常原因为一个datafile或者tablespace是在offline的状态或者一个undo的目标被破坏或者rollbacksegment被破坏。解决的办法是将所有的tablespace和datafile都置为online状态,如果不能解决则做下面的工作: 1.在initsid.ora中加入event=”10015tracenamecontextforeverlever10”; 2.shutdown数据库然后重启; 3.在$ORACLE_HOME/rdbms/log下,找到startup时生成的tracefile; 4.在trace文件中,找到下列信息“errorrecoverytx(#,#)object#”; 5.根据object#(与sys.dba_objects表中的object_id相同)在sys.dba_objects表中查出该object的名字; 6.将该objectdrop掉; 7.在init.ora文件中将该rollbacksegment放回rollback_segments参数中,删除event;8.shutdown数据库然后重启。此时”NeedsRecovery”的问题应该是完全解决了,否则就是rollbacksegment被破坏了。 ORA-01688:partitionNAMEbyNUMintablespaceNAME 产生原因:指定的tablespace空间已经被占用满,无法扩展。 解决方法:使用“ALTERTABLESPACEADDDATAFILE”命令增加文件系统文件和原始分区,或者增加INITIAL的大小(如:altertablespaceCDRS101defaultstorage(next500Mpctincrease1))应该能够解决,否则就是有人使用你的表空间上创建了一个比较大的数据文件导致你的表空间不够用。 一个报错例子如下:ORA-1688:unabletoextendtableRMMCDR.LOCAL_CDRpartitionLOCAL_CDR101by460800intablespaceCDRS101 相应的英文如下: Cause:Anextentcouldnotbeallocatedforatablesegmentintablespace Action:UsetheALTERTABLESPACEADDDATAFILEstatementtoaddoneormorefilestothespecifiedtablespace .认识EM(企业管理器)的体系结构 = OracleEnterpriseManager(EM)2.x实现了一个3层结构,其组成如下: 第一层First-tier: 第一层是客户端工具,如:EMConsole,DBAManagementPack和其他集成的Oracle应用。这些工具是从WindowsNT,Windows95,Windows98或SunSolaris机器的本地启动的。这些工具也可以是通过浏览器下载下来的JAVAapplet。 中间层Middle-tier: 中间层(也就是第二层)由安装在WindowsNT或SunSolarisserver上的OracleManagementServer(OMS)构成。 要使用EMConsole(企业管理器的控制台)和Job&Eventsubsystem(任务与事件子系统),必须有一个配置好的OracleManagementServer。 OMS提供了: -访问EM库(Repository)中的信息 -分派控制台的请求 -控制任务执行 -监控事件 -通过电子邮件或寻呼提示任务的完成或事件发生 多个OMS能够提供: -无需额外的管理,就可以实现负载的分布 -工作量能够自动地被共享和均衡 -容错:一个OMS可以重做另外一个OMS的工作量 第三层Third-tier: 第三层是智能代理(IntelligentAgent),是在每个server上必须安装的,用来执行任务和监控发生在该服务器各被管理对象上的事件的软件.被管理对象包括网络节点(服务器)、数据库、侦听程序(listener)以及其他安装在这些结点上的Oracle服务。 这三层可以是在同一台机器上,不同的机器上,或任意的组合,都可以。 B.企业管理器(EM)框架的设置 = 为了配置简便,每层配置后,应先验证是否配置正确,然后到下一层。方便的构造过程是从第三层到第一层。 I.配置第三层: 为了管理结点和结点上的oracle服务,必须在结点上配置并运行一个智能代理(IntelligentAgent)。 智能代理是由OracleServerCD上安装的。详细安装信息,参考OracleServer安装指南和IntelligentAgent用户指南。 如果被管理的结点是一个WindowsNT系统: Checklist- o启动智能代理 o设置一个有LogonasBatchJob权限的WindowsNT管理员用户 1.启动智能代理/IntelligentAgent: 启动一个WindowsNT上的IntelligentAgent,操作如下: a.双点控制面板/ControlPanel文件夹中的服务/Services图标。 b.选择名为OracleAgent的服务。 c.点击开始/Start按钮,启动这个代理。 停止一个WindowsNT上的IntelligentAgent,操作如下: a.双点控制面板/ControlPanel文件夹中的服务/Services图标。 b.选择名为OracleAgent的服务。 c.点击停止/Stop按钮,停止这个代理。 验证此代理是否在运行,进行下面操作的任意组合: a.在控制面板的服务中检查OracleAgent的状态 b.验证NT任务管理器中是否有进程dbsnmp.exe。 c.在命令行中执行netstart命令。OracleAgent应当出现在服务列表中。 2.设置用于运行任务和事件监控的WindowsNT用户的账户 Checklist- o确定WindowsNT系统的类型 o创建一个和管理员等同的账号(用户) o给新用户授予LogonasaBatchJob的权限 因为WindowsNT是一个安全的操作系统,NT上的智能代理必须通过一个拥有LogonasaBatchJob权限的NT用户来执行任务和事件。此特权可以赋给一个一存在的本地用户或域用户,或者一个新的NT用户。下面是如何设置WindowsNT用户的帐号。(RefertotheEMConfigurationGuideforadditionalinformation.) 注意:要创建或修改NT上的账号,必须以有Administrator(管理员)特权的用户登录。 先判断ORACLE安装在一个什么类型的WindowsNT系统上:主域控制器(PDC),备份控制器(BDC),独立的(member)Server还是一个工作站。如果机器是PDC或BDC,按照一下步骤建立或修改一个域用户。如果NT系统不是PDC或BDC,从“设置一个本地用户”一节开始。 设置一个域用户: 运行域的用户管理器 选择Start=Programs=AdministrativeTools=UserManagerforDomains 窗口的标题条应该是USERMANAGER-, 设置一个本地用户: 运行用户管理器(forDomains) 选择Start=Programs=AdministrativeTools=UserManager(ForDomains) 窗口的标题条应该是:USERMANAGER- 如果标题条中列出了域的名字,选User=SelectDomain。输入(例如.bobpc) 注意:如果已有一个WindowsNT账号accountwillbeusedbytheIntelligentAgent,skiptothesectionGrantLogonasaBatchJobPrivilege(step(d)below). 创建一个用户: a.选中一个管理员账号,选菜单User=Copy,拷贝这个账号及其权限. b.为EM账号输入新的用户名和口令(如EMUSER) c.验证确保仅有口令永不过期被打上钩。选择Add。 注意:如果在域中存在相同的名字的域用户和本地用户,口令必须有区别。口令是区分大小写的。并且本地帐户优先。 在第三层上为用户授予本地的LogonasBatchJob权限: d.选中在步骤(a)中创建的用户。 选择菜单Policies=UserRights。 e.ClickontheboxnexttoShowadvanceduserrights. f.选择Rights权限下拉列表中的“LogonasaBatchJob”。如果有账号曾被授予过这个权限,Grantto列表中将包含这个账号的名字。 g.选择Add。确保FROM中列出的是正确的名字: (1)域名,如果你想创建一个域用户的话;或 (2)本地机器名,如果你要创建一个本地用户 如果名字不正确,选择下拉列表,选择正确的机器名或域名。 h.点ShowUsers。找到刚刚创建的用户,点Add。 此账号将出现在AddNames的底部。如果名字正确,就点OK。此用户就被加到GrantTo:中。 然后,点OK关闭对话框。关闭UserManager。 注意:如果授予权限的用户已经登录了系统,需要重新注册,授权才会生效。 如果被管理结点是个UNIX系统: Checklist- o确认已经运行了post-installation脚本(root.sh)。 o验证智能代理IntelligentAgent(dbsnmp)执行文件的访问许可 o启动智能代理IntelligentAgent 1.运行root.sh: 每一次oracle安装之后,都必须运行root.sh脚本。该脚本设置了智能代理的执行文件(dbsnmp)的访问权限。此脚本还创建或更新智能代理所用来确定是否系统上的所有数据库都可以发现的oratab文件。对于每个创建的数据库,都有下列格式的一项: :Y/N 验证oratab文件列出了系统中的每个数据库,并且遵循了正确的语法。root.shshell脚本文件应当已经写下了OracleHome和SID的值。如果oratab中没有项目,按如下步骤操作: suroot $ORACLE_HOME/orainst ./root.sh 回答提出的问题。对于每个创建的数据库,项目的格式为:Y/N 你将自动地退出root.sh。 正常情况下,此代理被root.sh配置为一个setuid程序。如果root.sh执行成功,此代理将被安装成setuidroot,这样agent就可以以EMConsole中为该结点设定的PreferredCredentials中给的用户名和口令执行任务。 2.检查dbsnmp的文件访问权限: 为了验证root.sh已被成功的执行了,检查dbsnmp的文件访问权限: cd$ORACLE_HOME/bin 列出关于dbsnmp的相关详细信息: ls-aldbsnmp 此命令的输出应当是如下格式的: -rwsr-xr-x1rootdba1497980Jun1221:04dbsnmp Inthisexample,rootistheownerandthegroupisdba.Thefirst10characters(-rwxr-xr-x)representthelevelofpermissionssetontheexecutable.Thefirst4character(-rws)representstheownerspermissions. Forexample,theownerhas(r)read,(w)write,and(s)setuidonexecute.Thenext3characters(r-x)representthegroupspermissions.Forexample,(r)read, (x)execute.Groupdoesnothavewritepermissions.Thelast3characters(r-x)representsthepermissionsofeveryoneelseorworld.Ifrootistheowner and-rwsr-xr-xarethepermissions,thenroot.shhasbeenransuccessfully. 如果dbsnmp的所有者是root,访问权限是-rwsr-xr-x,说明root.sh被成功的执行了。 3.在Unix上启动智能代理: 在UNIX系统上,智能代理是由lsnrctl程序来启动和停止dbsnmp进程的。控制代理的命令如下: 在UNIX平台上启动代理lsnrctldbsnmp_start 在UNIX平台上停止代理lsnrctldbsnmp_stop 验证代理的状态lsnrctldbsnmp_status II.配置中间层-Oracle管理服务器 Checklist- o验证用于存储EM数据的数据库符合安装前的要求。 o运行EnterpriseManagerConfigurationAssistant来升级或创建新的EM存储库。 o启动OracleManagementServer. Oracle管理服务器(OMS)提供了在EM客户端和被管理结点之间的集中控制。OMS必须安装在SunSolaris(2.6以上)或WindowsNT4.0SP4以上,或Linux。 1.安装前的设置 OMS要有一个EM库(Repository)来存储所有的系统数据,应用数据和环境中被管理结点的状态。 a.EMRepository是存储在网络上可访问到的一个Oracle8x服务器上的一个模式中。它是OMS所需要的表,视图,索引,存储过程等对象的集合。 b.Oracle建议将EMRepository建立在一个非产品的实例中,这样实例可以被完全管理,不影响EMRepository的状态。 c.在存放EMRepository的数据库的init.ora文件中,参数processes=至少应设为200。实例必须被重起以使设置生效。 d.EMCA2.1将在数据库中创建OEM_REPOSITORY表空间(如果它不存在的话)。当然你也可以手工创建这个表空间。 要手工创建表空间,在Oracle8.x数据库上运行下面的脚本。此脚本创建一个带一个初始大小为5M的数据文件的表空间,此数据文件可以自动扩展到80M。 CREATETABLESPACEOEM_REPOSITORY DATAFILE SIZE5MAUTOEXTENDONNEXT25MMAXSIZE80M DEFAULTSTORAGE (INITIAL128K NEXT128K MINEXTENTS1 MAXEXTENTSUNLIMITED PCTINCREASE0 MINIMUMEXTENT128K 2.运行企业管理器配置助理EnterpriseManagerConfigurationAssistant: 企业管理器配置助理(EMCA)在每次OMS安装的最后都将被自动启动,用来创建和更新EMrepository。 注意:在安装后,启动EMCA: -选择菜单Programs=Oracle=EnterpriseManagement=ConfigurationAssistant -在命令行中输入:emca EMCA可以完成如下任务: -创建repository用户 -为repository用户创建模式/schema对象 -向EMrepository中加载OMSregistry数据. -设置OMS将使用的配置文件 -从一个用户模式中清除re

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论