Oracle常见错误诊断

 更新时间:2007年03月07日 00:00:00   作者:  
正在看的ORACLE教程是:Oracle常见错误诊断。ORACLE的这类错误在ORALCE的文档中有详细说明,但原因及措施说明不详细,本文当着重说明如何解决这类错误。

  1、ORA-12571、ORA-03113、ORA-03114、ORA-01041

  特征:客户端(代理或应用服务器)有时报这类断连错误

  原因:如果偶尔出现一次,则可能为网络原因或用户异常中止,如果经常出现则为客户端与服务端的字符集不一致。

  措施:如果偶尔出现,可在服务端的协议配置文件PROTOCOL.ORA中增加一行

  TCP.NODELAY=YES;

  如果经常出现,则为客户端与服务端字符集不一致或网络原因。

  客户端的字符集在注册表里定义:    HKEY__LOCAL__MACHINE/SOFTWARE/ORACLE/NLS__LANG

  在客户端注册表中的TCP参数项中设置   TCPMAXDATARETRANSMITIONS=20。

  2、ORA-01000

  特征:达到会话允许的最大游标数

  原因:达到会话允许的最大游标数

  措施:有两种解决方法:

  (1)在初始化文件INIT.ORA文件中增加OPEN_CURSORS的数量,一般要求大于200。

  (2)在应用级,与开发工具有关,例如设置MAXOPEN_CURSORS等。

  3、ORA-01545

  特征:某个回滚段不可用

  原因:(1)当使回滚段ONLINE时,但回滚段不可用,例如回滚段所在表空间OFFLINE;

  (2) 当使回滚段ONLINE时,但回滚段已ONLINE,例如回滚段被使用两次,典型的案例如OPS方式时,回滚段不能公有;

  (3)删除回滚段时,回滚段中有活动的事务;

  措施:(1)确保回滚段可

  (2)从初始化文件INIT.ORA的参数ROLLBACK)SEGMENTS中删除指定的回滚段。

  (3)可以将回滚段所在表空间删除,取消UNDO事务

  4、ORA-0165x

  特征:表空间没有足够的空间供分配

  原因:表空间已满;存储参数不合理,NEXT太小;没有连续的区间

  措施:如果表空间已满,则需为表空间增加文件;如果存储参数不合理,则需增加INITIAL和NEXT;如果没有连续的区间,需要合并空闲的表空间。

  查看空间碎片用DBA_FREE_SPACE

  5、ORA-01555

  特征:当前会话无法读到以前版本的数据

  原因:原因很多,主要原因有下列:回滚段太小、太少;回滚段冲突;交叉提交(FETCH_ACROSS)

  措施:增加回滚段数量;

  6、ORA-04031

  特征:共享池内存区内存不够,或产生内存碎片

  原因:当试图装载一个大包时或执行一个较大的存储过程时,而共享池没有连续的内存空间。

  措施:如果是内存不够,则增加SHARE)POOL_SIZE;

  如果是内存碎片,执行alter system flush share_pool

  7、ORA-04091

  特征:触发器工作不正常

  原因:一个行触发读取或修改变化的表(正在修改、插入)时,产生这种错误。

  措施:检查触发器脚本,保证引用完整性

  8、ORA-01242、ORA-01113

  特征:介质故障导致数据库宕机

  原因:介质故障。

  措施:检查硬件故障;修改dbshut脚本,将其中的STARTUP命令修改为:

  Startup open recover

  Alter database open


相关文章

  • Oracle显示游标的使用及游标for循环

    Oracle显示游标的使用及游标for循环

    本篇文章给大家介绍oracle显示游标的使用及游标for循环,当查询返回单行记录时使用隐式游标,查询返回多行记录并逐行进行处理时使用显式游标,对本文感兴趣的朋友一起学习吧
    2015-11-11
  • Oracle中的高效SQL编写PARALLEL解析

    Oracle中的高效SQL编写PARALLEL解析

    这篇文章主要介绍了Oracle中的高效SQL编写PARALLEL解析,在Oracle中,PARALLEL(并行)方式最大化调用计算机资源来成倍提高数据分析效率,这个在Oracle 9i之后的版本可以使用,需要的朋友可以参考下
    2023-07-07
  • Oracle 数据显示 横表转纵表

    Oracle 数据显示 横表转纵表

    横表转纵表亦可用与decode意义相似的case语句实现,原理同该语句,这里不再过多描述。
    2009-07-07
  • Oracle数据库的安全策略

    Oracle数据库的安全策略

    Oracle数据库的安全策略...
    2007-03-03
  • Oracle导入导出dmp文件具体示例

    Oracle导入导出dmp文件具体示例

    这篇文章主要给大家介绍了关于Oracle导入导出dmp文件的相关资料,dmp文件为oracle数据库的数据备份文件,执行oracle数据库导出dmp文件,相当于执行数据库备份;执行导入dmp文件,相当于数据库还原,需要的朋友可以参考下
    2023-11-11
  • navicat导入oracle导出的dmp文件

    navicat导入oracle导出的dmp文件

    现在工作中常用Oracle数据库,但是查询工具还是Navicat最好用,不论是数据导入导出,还是执行语句,都很清晰明了,下面这篇文章主要给大家介绍了关于navicat导入oracle导出的dmp文件的相关资料,需要的朋友可以参考下
    2023-05-05
  • 简单三步轻松实现ORACLE字段自增

    简单三步轻松实现ORACLE字段自增

    第一步:创建一个表、第二步:创建一个自增序列以此提供调用函数、第三步:我们通过创建一个触发器,使调用的方式更加简单
    2013-11-11
  • Oracle去除重复数据

    Oracle去除重复数据

    这篇文章介绍了Oracle去除重复数据的方法,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-05-05
  • CenterOs7 安装oracle19c的方法详解

    CenterOs7 安装oracle19c的方法详解

    这篇文章主要介绍了CenterOs7 安装oracle19c的方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-03-03
  • oracle—SQL技巧之(一)连续记录查询sql案例测试

    oracle—SQL技巧之(一)连续记录查询sql案例测试

    有这样一个需求:需要查询出某个客户某一年那些天是有连续办理过业务,本文给予sql实现语句并测试,感兴趣的朋友可以了解下
    2013-01-01

最新评论