rac1:/> impdp directory=backupdumpfile=ANQING.DMPtransport_datafiles=/u02/app/oracle/oradata/anqing/ANQING01.DBFremap_schema=anqing:dave logfile=anqing.log
Import: Release 11.2.0.3.0 - Production onMon Feb 20 22:22:17 2012
Copyright (c) 1982, 2011, Oracle and/or itsaffiliates. All rights reserved.
Connected to: Oracle Database 11gEnterprise Edition Release 11.2.0.3.0 - 64bit Production
With the Partitioning, OLAP, Data Miningand Real Application Testing options
ORA-39002: invalid operation
ORA-39322: Cannot use transportabletablespace with timestamp with timezone columns and different timezone version.
----------------------------------------------------------------------------
Oracle Database 11g Enterprise EditionRelease 11.2.0.1.0 - 64bit Production
PL/SQL Release 11.2.0.1.0 - Production
CORE 11.2.0.1.0 Production
TNS for 64-bit Windows: Version 11.2.0.1.0- Production
NLSRTL Version 11.2.0.1.0 – Production
SQL> SELECT NAME,VALUE$ FROM PROPS$WHERE NAME='DST_PRIMARY_TT_VERSION';
NAME VALUE$
-----------------------------------------------------------------------
DST_PRIMARY_TT_VERSION 11
SQL> select * from v$version;
BANNER
--------------------------------------------------------------------------------
Oracle Database 11g Enterprise EditionRelease 11.2.0.3.0 - 64bit Production
PL/SQL Release 11.2.0.3.0 - Production
CORE 11.2.0.3.0 Production
TNS for Linux: Version 11.2.0.3.0 -Production
NLSRTL Version 11.2.0.3.0 – Production
SQL> SELECT NAME,VALUE$ FROM PROPS$WHERE NAME='DST_PRIMARY_TT_VERSION';
NAME VALUE$
-------------------------------------------------------------------------------
DST_PRIMARY_TT_VERSION 14
rac1:/home/oracle> oerr ora 39322
39322, 00000, "Cannot usetransportable tablespace with timestamp with timezone columns and differenttimezone version."
// *Cause: The source database was at a different timesonze version than the
// target database and there were tables in the dumpfile with
// timestamp with timezone columns.
// *Action: Convert the target database to the same timezone version as the
// source database or use Data Pump without transportable tablespace.
Data Pump TTS Import Fails With ORA-39002And ORA-39322 Due To TIMEZONE Conflict [ID 1275433.1]
Oracle Database9i includes version 1 of the time zone files, and Oracle Database10g includes version 2. For Oracle Database 11g, release 2, all time zonefiles from versions 1 to 14 are included. Various patches and patch sets, whichare released separately for these releases, may update the time zone fileversion as well.
对应的解决方法有两种:
Create a newdatabase with the same timezone as the source database and use that to convertthe tablespace :
Before creatingthe new database set the environment variable, ORA_TZFILE, to match the sourcedatabase timezone version by setting it to the appropriate value, for example:-
$ export ORA_TZFILE=$ORACLE_HOME/oracore/zoneinfo/timezlrg_13.dat
- Import the source table space into the newly created database, for example:
$ impdp userid="/ as sysdba"directory=DATA_PUMP_EXADATA dumpfile=
- Use the 'dbms_dst' package to upgrade the new database timezone to version 14( in this example).
- Note: The default timezone version for 11.2.0.2 is14..
Upgrade the thesource database Time Zone File and Timestamp with Time Zone Data (TSTZ) to thesame version as the target database version and redo the export.
For the steps todo this upgrade see the "Oracle Database Globalization Support Guide,11gRelease 2 (11.2)" steps under "Upgrading the Time Zone File andTimestamp with Time Zone Data" here:
http://download.oracle.com/docs/cd/e11882_01/server.112/e10729/ch4datetime.htm#cacffhcj
TSLTZ (TIMESTAMP WITH LOCAL TIME ZONE) dataand DST updates [ID 756454.1]
How To Upgrade The Timezone File Older ThanVersion 11 Using DBMS_DST Package [ID 944122.1]
Updating the RDBMS DST version in 11gR2(11.2.0.1 and up) using DBMS_DST [ID 977512.1]
Actions For DST Updates When Upgrading ToOr Applying The 11.2.0.3 Patchset [ID 1358166.1]
Actions For DST Updates When Upgrading ToOr Applying The 11.2.0.2 Patchset [ID 1201253.1]
Actions For DST Updates When Upgrading To11.2.0.1 Base Release [ID 815679.1]
官网上提到的方法是对于oracle 8i,9i,10g的time zone 升级到11g的方法,基本是运行utltzver.sql脚本,或对于11.2.0.1到11.2.0.3则是直接升级DB.
我这里也直接升级DB,不采用其他的操作了。
TTS 要求source 和 Target 数据库版本一致,否则就出出现Time zone 的问题,导致impdp 无法成功进行。