给你参考参考,主要有一下原因引起的
• 数据冲突。
• 逻辑冲突。
• 系统挂起。
• 性能问题。
• 系统崩溃。
• 临界功能非法。
• 内存冲突。1. 数据冲突
数据冲突包括所有块格式冲突、非法索引入口和媒介数据冲突(例如数据字典)。典型例子
是选择一个表时用户得到有关系统数据文件的O R A - 6 0 0 [ 3 3 3 9 ]错误。引起数据冲突的原因多种多样,比如,某硬件厂商的磁盘簇会引起操作系统的问题等。诊断这些问题的标准或典型的诊断操作包括:• 如果冲突是一个内部错误,收集跟踪文件(并在应用时格式化)。
• 根据冲突时间转储重做日志文件。如果无法确信究竟有多少日志文件要转储,请保存所
有的重做日志文件并咨询O S S。
• 如果有理由怀疑是操作系统问题,则要求系统管理员执行全面的硬件诊断。
• 决定问题是否常见或在指定端口。
2. 逻辑冲突
逻辑冲突是指数据出错(包括存储数据或是查询返回的数据)。尽管错误并不必需由外部返
回,将一列更新为空后还想操作表中的行,或使用不同的类型优化器时一条查询返回不同的
结果等都是逻辑冲突的例子。因为很难检测出,所以逻辑冲突的危害性非常大,数据库管理
员采取的标准诊断操作有:
• 创建可再现检测的案例。
• 如果冲突是一个内部错误(如,O R A - 6 0 0 [ 1 3 0 0 4 ]错误),收集跟踪文件(并在应用时格式
化)。
• 决定问题的类属或确定端口。
3. 系统挂起
系统挂起是指用户无法注册到数据库或执行操作,也可能是指介质恢复或崩溃恢复后在
数据库一直打开时数据库挂起。比如,一个进程具有某数据结构的l a t c h,微调可能引起系统
挂起。系统挂起时的标准诊断操作如下:
• 在数据库打开的情况下挂起时,设置事件并诊断是在哪一恢复阶段引起了数据库阻塞,
同时转储诊断信息(如,进行事务恢复期间u n d o段段头的微调)。如果是一个系统挂起的
情况,使用诸如O R A D B X的工具或者A LTER SESSION命令在适当的间隔对系统状态转
储。还要监测C P U和后台、前台进程的I / O活动。
• 决定问题的类属或指定端口。
• 创建可再现检测的案例。
• 如果问题仅在某个用户处经常出现,可通过调制解调器网络拨号方式与O S S联系寻求帮
助。
4. 性能问题
性能问题能分成两类。一类是在响应时间或批处理时间性能的恶化,另一种是并发处理
活动的增加引起的性能降低。这些问题解决起来通常很费时,需要耐心。响应时间慢有时可
能是由于等待库高速缓存芯片。标准诊断操作包括:
• 以专门指定的形式报告性能降低,如响应时间、批处理时间、支持的并发注册数量,以
及共享池管理的有效性等。
• 如果可能,提供可再现检测案例,或提供导致性能变差的环境和因素的细节内容。如,
注册数量、内存的平均使用、典型的功能、I / O操作,以及对O R A C L E操作的动态统计
等。
• 如果问题仅在某个用户处经常出现,可通过调制解调器网络拨号方式与O S S联系寻求帮
助。
• 决定问题的类属或确定端口。
5. 系统崩溃
系统崩溃包括由于一后台进程死掉而引起的数据库崩溃。这类问题不常见,但如果是数
据库崩溃, D B A应采取以下诊断操作:
• 检查警告日志文件,查看是否有O R A - 6 0 0错误出现,如果是,需要的话获取跟踪文件并
将其格式化。
• 找到用户在出现问题时正在执行的操作以及正在执行的应用程序。如果可以找出该程序,
则试着在实验机上运行,以发现问题。
• 决定问题的类属或确定端口。
6. 临界功能非法
临界功能非法是指,数据库所有功能或依赖一个大应用程序的重要特征失效。最典型的
是由数据库软件中的一个b u g,或运行于O r a c l e顶层的任何第三方软件引起的。符合此类情况
的一些例子有O r a c l e实用工具内核出错或应用程序的出错。在某种情况下,一个功能不可用,
可能会间接影响数据库的可用性。如,一个数据库正用一个完全数据库导出文件进行恢复,
并且是从几个工作不正常的磁带上导入,这就使数据库无法从产品库上重建。标准诊断操作
有:
• 收集跟踪文件,依赖错误类转储相关的重做日志文件(在O S S指导下),并报告产生错误
的环境。
• 试着创建一个可再现检测的案例。
• 提供具体内容,如使用的应用工具、存取的存储结构、实施的D D L / D M L和在错误发生
期间运行的包或过程,尤其是在无法提供一个可再现检测案例时,这些信息尤其重要。
• 决定问题的类属或确定端口。
7. 内存冲突
内存冲突包括标记内存泄漏的内部错误、内存数据结构冲突和高速缓存冲突。诊断操作
包括:
• 收集产生的跟踪文件。
• 如果可能提供一个可再现测试案例,或报告可能引起错误的环境,如下所述:
• OCI 细节或O r a c l e工具/实用程序,以及应用程序使用的预编译器。
• 操作系统工具或用于连接应用的第三方工具。
• 应用程序触发的触发器。
• 执行的包或过程。