广

oracle数据库

  • MYSQL
  • MSSQL
  • Redis
  • MongoDB
  • oracle数据库
  • 数据管理

    Oracle常见错误诊断

    2018-05-04 21:21:02 次阅读 稿源:互联网
    广告
    全网推广平台,软文发布
    正在看的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


    一起学吧部分文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与一起学吧进行文章共享合作。

    广告
    广告
    广告
    广告