Oracle 19c导入数据出现ORA-56935 ORA-39065

Oracle 19c导入数据出现ORA-56935 ORA-39065

错误内容:

$ impdp \'sys/xxx@sjztncdb as sysdba\' dumpfile=yksf0529.dmp logfile=impsjzbicd_0529.log directory=SJZT TABLE_EXISTS_ACTION=truncate parallel=2

Import: Release 19.0.0.0.0 - Production on Thu May 29 15:21:50 2025
Version 19.3.0.0.0

Copyright (c) 1982, 2019, Oracle and/or its affiliates.  All rights reserved.

Connected to: Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
ORA-39006: internal error
ORA-39065: unexpected master process exception in DISPATCH
ORA-56935: existing datapump jobs are using a different version of time zone data file
ORA-06512: at "SYS.DBMS_DST", line 1864
ORA-06512: at "SYS.DBMS_SYS_ERROR", line 79
ORA-06512: at "SYS.DBMS_DST", line 1827
ORA-06512: at "SYS.KUPM$MCP", line 20451
ORA-06512: at "SYS.KUPM$MCP", line 13058
ORA-06512: at "SYS.KUPM$MCP", line 12434
ORA-06512: at "SYS.KUPM$MCP", line 15078
ORA-06512: at "SYS.KUPM$MCP", line 10314

ORA-39097: Data Pump job encountered unexpected error -56935

在mos上查询到两个资料 (Doc ID 2471020.1)和 (Doc ID 1307959.1),资料中介绍可以使用如下的方法进行处理。

col PROPERTY_NAME for a30 
col value for a20

SELECT PROPERTY_NAME, SUBSTR (property_value, 1, 30) value
FROM   DATABASE_PROPERTIES
WHERE  PROPERTY_NAME LIKE 'DST_%'
ORDER  BY PROPERTY_NAME; 

PROPERTY_NAME                  VALUE
------------------------------ --------------------
DST_PRIMARY_TT_VERSION         32
DST_SECONDARY_TT_VERSION       14
DST_UPGRADE_STATE              DATAPUMP(2)

SQL> ALTER SESSION SET EVENTS '30090 TRACE NAME CONTEXT FOREVER, LEVEL 32';

Session altered.

SQL> exec dbms_dst.unload_secondary;

PL/SQL procedure successfully completed.

SQL> SELECT PROPERTY_NAME, SUBSTR (property_value, 1, 30) value
  2  FROM   DATABASE_PROPERTIES
  3  WHERE  PROPERTY_NAME LIKE 'DST_%'
  4  ORDER  BY PROPERTY_NAME; 

PROPERTY_NAME                  VALUE
------------------------------ --------------------
DST_PRIMARY_TT_VERSION         32
DST_SECONDARY_TT_VERSION       14
DST_UPGRADE_STATE              DATAPUMP(1)

SQL> exec dbms_dst.unload_secondary;

PL/SQL procedure successfully completed.

SQL> SELECT PROPERTY_NAME, SUBSTR (property_value, 1, 30) value
  2  FROM   DATABASE_PROPERTIES
  3  WHERE  PROPERTY_NAME LIKE 'DST_%'
  4  ORDER  BY PROPERTY_NAME; 

PROPERTY_NAME                  VALUE
------------------------------ --------------------
DST_PRIMARY_TT_VERSION         32
DST_SECONDARY_TT_VERSION       0
DST_UPGRADE_STATE              NONE

SQL> 

根据以上方法处理之后再次导入成功。

你可能感兴趣的:(数据库运维案例分享,oracle,数据库)