ORACLE expdp备份与ORA-31693、ORA-02354、ORA-01555

发布时间:2020-08-09 09:34:04 作者:烟花丶易冷
来源:ITPUB博客 阅读:205
    近期,某综合网管系统expdp备份出现异常,报错信息如下:
Export: Release 10.2.0.4.0 - 64bit Production on 星期二, 12 4月, 2016 11:30:00
Copyright (c) 2003, 2007, Oracle.  All rights reserved.
;;; 
连接到: Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
启动 "SYSTEM"."SYS_EXPORT_SCHEMA_07":  system/******** schemas=ultra directory=backup_expdp dumpfile=expnms_201604121.dmp,expnms_201604122.dmp,expnms_201604123.dmp,exp_nms201604124.dmp filesize=40g VERSION=10.2.0.2 exclude=statistics logfile=exp_20160412.log 
正在使用 BLOCKS 方法进行估计...
处理对象类型 SCHEMA_EXPORT/TABLE/TABLE_DATA
使用 BLOCKS 方法的总估计: 197.1 GB
处理对象类型 SCHEMA_EXPORT/USER
处理对象类型 SCHEMA_EXPORT/SYSTEM_GRANT
处理对象类型 SCHEMA_EXPORT/ROLE_GRANT
处理对象类型 SCHEMA_EXPORT/DEFAULT_ROLE
处理对象类型 SCHEMA_EXPORT/PRE_SCHEMA/PROCACT_SCHEMA
处理对象类型 SCHEMA_EXPORT/TYPE/TYPE_SPEC
处理对象类型 SCHEMA_EXPORT/DB_LINK
处理对象类型 SCHEMA_EXPORT/SEQUENCE/SEQUENCE
处理对象类型 SCHEMA_EXPORT/TABLE/TABLE
处理对象类型 SCHEMA_EXPORT/TABLE/GRANT/OWNER_GRANT/OBJECT_GRANT
处理对象类型 SCHEMA_EXPORT/TABLE/INDEX/INDEX
处理对象类型 SCHEMA_EXPORT/TABLE/CONSTRAINT/CONSTRAINT
处理对象类型 SCHEMA_EXPORT/TABLE/COMMENT
处理对象类型 SCHEMA_EXPORT/PACKAGE/PACKAGE_SPEC
处理对象类型 SCHEMA_EXPORT/FUNCTION/FUNCTION
处理对象类型 SCHEMA_EXPORT/PROCEDURE/PROCEDURE
处理对象类型 SCHEMA_EXPORT/PACKAGE/COMPILE_PACKAGE/PACKAGE_SPEC/ALTER_PACKAGE_SPEC
处理对象类型 SCHEMA_EXPORT/FUNCTION/ALTER_FUNCTION
处理对象类型 SCHEMA_EXPORT/PROCEDURE/ALTER_PROCEDURE
处理对象类型 SCHEMA_EXPORT/VIEW/VIEW
处理对象类型 SCHEMA_EXPORT/PACKAGE/PACKAGE_BODY
处理对象类型 SCHEMA_EXPORT/TABLE/CONSTRAINT/REF_CONSTRAINT
处理对象类型 SCHEMA_EXPORT/TABLE/TRIGGER
处理对象类型 SCHEMA_EXPORT/TABLE/INDEX/FUNCTIONAL_AND_BITMAP/INDEX
处理对象类型 SCHEMA_EXPORT/JOB
处理对象类型 SCHEMA_EXPORT/POST_SCHEMA/PROCOBJ
ORA-31693: 表数据对象 "ULTRA"."DAY_META_TASK_RESULT_B" 无法加载/卸载并且被跳过, 错误如下:
ORA-02354: 导出/导入数据时出错
ORA-01555: 快照过旧: 回退段号 24 (名称为 "_SYSSMU24$") 过小 
. . 导出了 "ULTRA"."ZXMG_UDPATE_BACKUP"             18.36 GB 536021168 行
   接下来是问题的处理过程,看到Ora-01555,首先想到的是查看及调整undo_retention参数
SQL> show parameter undo_r
NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
undo_retention                    integer     3600
SQL> select tablespace_name,sum(bytes)/1024/1024/1024 gb from dba_data_files where tablespace_name like '%UNDO%' group by tablespace_name;
TABLESPACE_NAME                        GB
------------------------------          ----------
UNDOTBS1                       106.992172
   然后查看了undo表空间的使用率,其使用率只有1%,因此考虑调整undo_retention参数到5400,调整后问题依旧,后来又调整到7200,问题依然存在,但是undo表空间的使用率最高到30%。现在,可以判断不是单纯的undo表空间参数undo_retention的问题了,需要具体问题具体分析一下。查看问题表的结构发现,该表有2个大字段:
SQL> desc "ULTRA"."DAY_META_TASK_RESULT_B"
 名称                                      是否为空? 类型
 ----------------------------------------- --------        ----------------------------
 META_TASK_RESULT_ID         NOT NULL  VARCHAR2(50)
 SCHEDULER_ID                                     VARCHAR2(50)
 META_TASK_ID                                     VARCHAR2(50)
 TIME                                                   NUMBER(20)
 ALARM                                                 NUMBER(5)
 META_TASK_STATE                               NUMBER(5)
 INSTANCE                                            VARCHAR2(200)
 UNIT                                                   VARCHAR2(10)
 VALUE_CHECK                                      VARCHAR2(5)
 SHELL_RESULT                                     CLOB
 ADVICE                                                VARCHAR2(4000)
 OPINION                                              VARCHAR2(100)
 ALARM_INFO                                        VARCHAR2(200)
 VALUE                                                 CLOB
 VTABLE                                               VARCHAR2(30)
 REFLAG                                               VARCHAR2(50)
   通过查询oracle官网,oracle的lob大字段有自己的retention参数,如果只调整undo_retention,而没有同步到lob大字段,该参数还是默认的900s,确认查询结果如下:
SQL>select table_name,column_name,pctversion,retention from dba_lobs where table_name='DAY_META_TASK_RESULT_B'
TABLE_NAME                         COLUMN_NAME                    PCTVERSION  RETENTION
------------------------------           ------------------------------                    ----------  ----------
DAY_META_TASK_RESULT_B         SHELL_RESULT                                  900
DAY_META_TASK_RESULT_B         VALUE                                              900
   明确了问题原因,接下来就是修改表含有lob大字段的retention设置
SQL>ALTER TABLE DAY_META_TASK_RESULT_B MODIFY LOB(SHELL_RESULT)(retention);
table altered.
SQL>ALTER TABLE DAY_META_TASK_RESULT_B MODIFY LOB(VALUE)(retention);
table altered.
SQL>select table_name,column_name,pctversion,retention from dba_lobs where table_name='DAY_META_TASK_RESULT_B'
TABLE_NAME                         COLUMN_NAME                    PCTVERSION  RETENTION
------------------------------           ------------------------------                    ----------  ----------
DAY_META_TASK_RESULT_B         SHELL_RESULT                                  7200
DAY_META_TASK_RESULT_B         VALUE                                              7200
   调整完毕后,该平台的expdp恢复正常:
Export: Release 10.2.0.4.0 - 64bit Production on 星期四, 21 4月, 2016 11:30:00
Copyright (c) 2003, 2007, Oracle.  All rights reserved.
;;; 
连接到: Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
启动 "SYSTEM"."SYS_EXPORT_SCHEMA_02":  system/******** schemas=ultra directory=backup_expdp dumpfile=expnms_201604211.dmp,expnms_201604212.dmp,expnms_201604213.dmp,exp_nms201604214.dmp filesize=40g VERSION=10.2.0.2 exclude=statistics logfile=exp_20160421.log 
正在使用 BLOCKS 方法进行估计...
处理对象类型 SCHEMA_EXPORT/TABLE/TABLE_DATA
使用 BLOCKS 方法的总估计: 199.8 GB
处理对象类型 SCHEMA_EXPORT/USER
处理对象类型 SCHEMA_EXPORT/SYSTEM_GRANT
处理对象类型 SCHEMA_EXPORT/ROLE_GRANT
处理对象类型 SCHEMA_EXPORT/DEFAULT_ROLE
处理对象类型 SCHEMA_EXPORT/PRE_SCHEMA/PROCACT_SCHEMA
处理对象类型 SCHEMA_EXPORT/TYPE/TYPE_SPEC
处理对象类型 SCHEMA_EXPORT/DB_LINK
处理对象类型 SCHEMA_EXPORT/SEQUENCE/SEQUENCE
处理对象类型 SCHEMA_EXPORT/TABLE/TABLE
处理对象类型 SCHEMA_EXPORT/TABLE/GRANT/OWNER_GRANT/OBJECT_GRANT
处理对象类型 SCHEMA_EXPORT/TABLE/INDEX/INDEX
处理对象类型 SCHEMA_EXPORT/TABLE/CONSTRAINT/CONSTRAINT
处理对象类型 SCHEMA_EXPORT/TABLE/COMMENT
处理对象类型 SCHEMA_EXPORT/PACKAGE/PACKAGE_SPEC
处理对象类型 SCHEMA_EXPORT/FUNCTION/FUNCTION
处理对象类型 SCHEMA_EXPORT/PROCEDURE/PROCEDURE
处理对象类型 SCHEMA_EXPORT/PACKAGE/COMPILE_PACKAGE/PACKAGE_SPEC/ALTER_PACKAGE_SPEC
处理对象类型 SCHEMA_EXPORT/FUNCTION/ALTER_FUNCTION
处理对象类型 SCHEMA_EXPORT/PROCEDURE/ALTER_PROCEDURE
处理对象类型 SCHEMA_EXPORT/VIEW/VIEW
处理对象类型 SCHEMA_EXPORT/PACKAGE/PACKAGE_BODY
处理对象类型 SCHEMA_EXPORT/TABLE/CONSTRAINT/REF_CONSTRAINT
处理对象类型 SCHEMA_EXPORT/TABLE/TRIGGER
处理对象类型 SCHEMA_EXPORT/TABLE/INDEX/FUNCTIONAL_AND_BITMAP/INDEX
处理对象类型 SCHEMA_EXPORT/JOB
处理对象类型 SCHEMA_EXPORT/POST_SCHEMA/PROCOBJ
. . 导出了 "ULTRA"."DAY_META_TASK_RESULT_B"         39.40 GB 20009768 行
. . 导出了 "ULTRA"."ZXMG_UDPATE_BACKUP"             18.87 GB 550823549 行
.
.
.
. . 导出了 "ULTRA"."WLANUPDATESCHEDULE"                 0 KB       0 行
. . 导出了 "ULTRA"."WORKFLOW_STAT"                      0 KB       0 行
已成功加载/卸载了主表 "SYSTEM"."SYS_EXPORT_SCHEMA_02" 
******************************************************************************
SYSTEM.SYS_EXPORT_SCHEMA_02 的转储文件集为:
  /opt/backup/expnms_201604211.dmp
  /opt/backup/expnms_201604212.dmp
  /opt/backup/expnms_201604213.dmp
  /opt/backup/exp_nms201604214.dmp
作业 "SYSTEM"."SYS_EXPORT_SCHEMA_02" 已于 18:12:35 成功完成

至此,故障处理完毕!

推荐阅读:
  1. Oracle如何备份还原
  2. 怎么使用Oracle数据库的逻辑备份工具

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

ora-01555 ora-02354 ora-31693

上一篇:拆到最后一颗螺丝钉:荣耀MagicBook Pro的品质自证与工匠精神

下一篇:系统权限ADMINISTER DATABASE TRIGGER的作用

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》