溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

expdp ORA-01555(一)

發布時間:2020-08-16 15:42:19 來源:ITPUB博客 閱讀:484 作者:chenoracle 欄目:關系型數據庫

expdp ORA-01555(一)

環境信息:

DB:Oracle 11.2.0.1.0

OS:Windows Server 2012

---敏感數據已替換

問題:

expdp導出一張含有BLOG字段的大表(20G)時,報錯ORA-01555

---expdp_log

Processing object type SCHEMA_EXPORT/PROCEDURE/ALTER_PROCEDURE

Processing object type SCHEMA_EXPORT/VIEW/VIEW

Processing object type SCHEMA_EXPORT/TABLE/STATISTICS/TABLE_STATISTICS

ORA-31693: Table data object "CHENJCH"."T_XXX_XXXXX" failed to load/unload and is being skipped due to error:

ORA-02354: error in exporting/importing data

ORA-01555: snapshot too old: rollback segment number 10 with name "_SYSSMU10_XXXXXXXXX$" too small

---alert_XXX.log

Tue Oct 30 12:05:20 2018

Archived Log entry 6560 added for thread 1 sequence 46359 ID 0x7262bbad dest 1:

Tue Oct 30 13:19:12 2018

ORA-01555 caused by SQL statement below (SQL ID: 88tquba1dj6s0, SCN: 0x0000.47dd74a2):

SELECT * FROM RELATIONAL("CHENJCH"."T_XXX_XXXXX")

Tue Oct 30 13:29:42 2018

問題分析:

ORA-01555問題一般有兩個原因:

(1)UNDO表空間不足

(2)undo_retention時間太小

---查看UNDO表空間還有很大剩余

SQL> select bytes / 1024 / 1024 / 1024,

            tablespace_name,

            autoextensible,

            maxbytes / 1024 / 1024 / 1024

       from dba_data_files a

      where tablespace_name = 'UNDOTBS1';

BYTES/1024/1024/1024 TABLESPACE_NAME                AUTOEXTENSIBLE MAXBYTES/1024/1024/1024

-------------------- ------------------------------ -------------- -----------------------

        1.4306640625 UNDOTBS1                       YES                   31.9999847412109

SQL> select segment_name,

       tablespace_name,

       r.status,

       (initial_extent / 1024) InitialExtent,

       (next_extent / 1024) NextExtent,

       max_extents,

       v.curext CurExtent

  From dba_rollback_segs r, v$rollstat v

 Where r.segment_id = v.usn(+)

   and segment_name = '_SYSSMU10_XXXXXXXXX$';

SEGMENT_NAME                   TABLESPACE_NAME                STATUS           INITIALEXTENT NEXTEXTENT MAX_EXTENTS  CUREXTENT

------------------------------ ------------------------------ ---------------- ------------- ---------- ----------- ----------

_SYSSMU10_XXXXXXXXX$           UNDOTBS1                       ONLINE                     128         64       32765          3

---查看undo_retention為默認值900秒

SQL> show parameter undo

NAME                                 TYPE        VALUE

------------------------------------ ----------- ------------------------------

undo_management                      string      AUTO

undo_retention                       integer     900

undo_tablespace                      string      UNDOTBS1

 

---查看retention為默認值900秒,PCTVERSION為空

SQL> select column_name, pctversion, retention

       from dba_lobs

      where table_name = 'T_XXX_XXXXX'

        and owner = 'CHENJCH';

COLUMN_NAME      PCTVERSION  RETENTION

---------------- ---------- ----------

FFILE                           900

---查看當前使用retention還是PCTVERSION

select decode(bitand(flags, 32), 32, 'Retention', 'Pctversion') ||

       ' policy used'

  from lob$

 where lobj# in

       (select object_id

          from dba_objects

         where object_name in (select segment_name

                                 from dba_lobs

                                where table_name in ('T_XXX_XXXXX')

                                  and owner = 'CHENJCH'));

DECODE(BITAND(FLAGS,32),32,'RE

------------------------------

Retention policy used

     

SQL> select max(maxquerylen) from v$undostat;

MAX(MAXQUERYLEN)

----------------

            1939  

解決方案:調大 RETENTION 

SQL> ALTER SYSTEM SET UNDO_RETENTION = 3600 scope=both;   

SQL> SHow parameter undo

NAME                                 TYPE        VALUE

------------------------------------ ----------- ------------------------------

undo_management                      string      AUTO

undo_retention                       integer     3600

undo_tablespace                      string      UNDOTBS1

---lob字段使用的retention還是900

SQL> select column_name, pctversion, retention

       from dba_lobs

      where table_name = 'T_XXX_XXXXX'

        and owner = 'CHENJCH';

COLUMN_NAME      PCTVERSION  RETENTION

---------------- ---------- ----------

FFILE                           900

---lob字段使用的retention需要在執行一次

SQL> alter table CHENJCH.T_XXX_XXXXX modify lob(FFILE) (retention);  

---ORA-00054: 資源正忙, 但指定以 NOWAIT 方式獲取資源, 或者超時失效

---等一會在執行

Table altered

---alter table CHENJCH.T_XXX_XXXXX modify lob(FFILE) (pctversion 5);

SQL> select column_name, pctversion, retention

       from dba_lobs

      where table_name = 'T_XXX_XXXXX'

        and owner = 'CHENJCH';  

COLUMN_NAME      PCTVERSION  RETENTION

---------------- ---------- ----------

FFILE                           3600

---回退操作

---ALTER SYSTEM SET UNDO_RETENTION = 900 scope=both;

---alter table CHENJCH.T_XXX_XXXXX modify lob(FFILE) (retention);

參考:

Data Pump Export Fails With ORA-31693 ORA-02354 and ORA-01555 Errors And No LOB Corruption (文檔 ID 1507116.1)

https://support.oracle.com/epmos/faces/SearchDocDisplay?_afrLoop=337135896307291&_afrWindowMode=0&_adf.ctrl-state=1bqt29sg65_4

歡迎關注我的微信公眾號"IT小Chen",共同學習,共同成長?。?!

expdp ORA-01555(一)

expdp ORA-01555(一)


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女