如何解决Oracle测试数据库中的ORA-1555错误

 
   | |

导读:专家面对提问者同样的程序在产品数据库中运行得很好,但是在测试数据库中却出现故障这一问题在本文中作出了解答。

关键词:Oracle Oracle错误 ORA-1555 ORA-12801

正在加载数据... 【TechTarget中国原创】我们在和产品数据库同步的测试数据库中执行包。我们执行的这个包有多个程序,在产品数据库中执行这个包需要六个小时。但是在测试数据库中执行其中一个程序时出现了故障,并且报错……

【TechTarget中国原创】问:我们在和产品数据库同步的测试数据库中执行包。我们执行的这个包有多个程序,在产品数据库中执行这个包需要六个小时。但是在测试数据库中执行其中一个程序时出现了故障,并且报错ORA-12801:error signaled in parallel query server P005:

  ORA-01555: snapshot too old: rollback segment number 1 with name "_SYSSMU1$" too small

  在测试数据库中和在产品数据库中的程序是一样的,但是我们仍然收到了错误信息。目前我们查不出原因,因为在同样的程序在产品数据库中运行得很好。你能说明是什么原因吗?

  答:ORA-1555错误表明你的UNDO表空间太小或者UNDO_RETENTION字段设置的空间不足。或者两种情况都有可能。如果这个包要六个小时才能执行,UNDO_RETENTION字段至少要设为21600 (21600秒=6小时)。你需要足够大的UNDO表空间装这么大的undo信息。

 
查看全文
 
 
 
 
 

Oracle错误

 
Oracle通常将没有引号的标识符转换成大写键盘的,在提交查询时你必须给列名加入双引号以避免出现错误。
 
在Oracle中,CLOB列包含了分隔的10位代码,如何避免重复的代码是一件比较麻烦的事,专家给出了三种解决方法,你可以根据自身情况进行选择。
 
在Windows 2003操作系统下安装了Oracle 8i数据库软件,使用的时候发生Ora-1067错误,出现这一问题的原因是什么,Oracle专家给出了解释。
 
如何在触发器内部建立一个索引,专家说如果DML是EXECUTE IMMEDIATE语句的一部分,你就可以在触发器中执行DML。
 
在进行Oracle实例维护时出现内存分配问题,导致无法启动新连接,正在运行的会话很慢,专家将给出解决方案。
 

登录TechTarget中国

关闭
本服务仅向TechTarget中国的会员开放,请登录或立即免费注册
电子邮件地址:
请输入您的电子邮件地址
密码:
下次自动登录