建议使用Chrome浏览器访问!
技术支持
互动社区
学习培训
深信服官网
合作伙伴

超融合HCI

关注
深信服超融合SANGFOR HCI是面向下一代数据中心的软件定义基础架构,通过虚拟化技术融合计算、存储、网络和安全等资源,并提供运维管理、容灾备份、智能监控等高级特性,帮助用户构建极简、稳定、高性能的云化数据中心基石。
故障案例库
典型场景排查思路

【aCloud】oracle数据库expdp导出带有lob字段的表,报ORA-01555错误的问题

更新时间:2018-12-12
  • 阅读权限:游客
  • 下载
  • 分享
  • 收藏
所属模块 场景部署 | 数据库部署
适用版本 通用
一线反馈用户用expdp备份导出一张带有LOB字段的表时,报ORA-01555快照过旧错误。
执行命令如下:
expdp  "'/ as sysdba'" directory=DIR1 dumpfile=OA_APP_FORMMAIN_0090_20170522.dmp tables=OA_APP.FORMMAIN_0090

具体报错如下:
ORA-39126: Workerunexpected fatal error in KUPW$WORKER.FETCH_XML_OBJECTS[INDEX:"SAPSR3"."LXE_OBJ_EXP_LANG~0"]  
ORA-01555: snapshottoo old: rollback segment number 11 with name "_SYSSMU11_2268899145$"too small  
ORA-06512: at"SYS.DBMS_SYS_ERROR", line 95  
ORA-06512: at"SYS.KUPW$WORKER", line 11259  
查看了当时导出时报的错误,具体如下:
ORA-39126: Workerunexpected fatal error in KUPW$WORKER.FETCH_XML_OBJECTS[INDEX:"SAPSR3"."LXE_OBJ_EXP_LANG~0"]  
ORA-01555: snapshottoo old: rollback segment number 11 with name "_SYSSMU11_2268899145$"too small  
ORA-06512: at"SYS.DBMS_SYS_ERROR", line 95  
ORA-06512: at"SYS.KUPW$WORKER", line 11259  
1、错误分析
通过上面的报错信息ORA-01555快照过旧,确定是由于undo的表空间不足或者undo_retention 太小,通过语句
select tablespace_name,sum(bytes)/1024/1024/1024 from dba_free_space
where tablespace_name='UNDOTBS1' group by tablespace_name;发现undo表空间还有32g的剩余,通过
show parameter undo 发现undo_retention是900秒,这个值有点小,需要调整其大小。
2、调整参数
  通过如下语句调整参数:
alter system set undo_retention=1800 scope=both;

3、重新执行expdp
   重新执行expdp后测试正常。

这个问题的根本原因是undo_retention的值设置的太小。

  通过如下语句调整参数:
alter system set undo_retention=1800 scope=both;
oracle数据库的维护过程中应该依据具体业务情况调整其合适的参数值
本页目录
  • 问题描述
  • 告警信息
  • 处理过程
  • 根因
  • 解决方案
  • 建议与总结