重庆思庄Oracle、KingBase、PostgreSQL、Redhat认证学习论坛

标题: ORA-39405 TSTZ版本问题 [打印本页]

作者: 刘泽宇    时间: 2021-3-18 17:56
标题: ORA-39405 TSTZ版本问题
在19c的数据库上进行impdp导入数据时,发现导入报错:
ORA-39405:Oracle Data Pump does not support importing from a source database with TSTZ version 34 into a target database with TSTZ version 32.
查看说是源库与测试库的时区版本不同,源库时区版本较高,因此导入失败
源库:
select * from v$timezone_file;
FILENAME            VERSION         CON_ID
------------           ---------------  --------------
timezlrg_34                            34                   0

测试库:
select * from v$timezone_file;
FILENAME            VERSION         CON_ID
------------           ---------------  --------------
timezlrg_32                            32                   0

要解决这样的问题需要对测试库打补丁,查看对应34的补丁程序:
29997937: RDBMS - DSTV34 UPDATE - TZDATA2019B
以及调整的脚本:DBMS_DST_scriptsV1.9.zip(可在官方文档:1585343.1下载)将补丁包和调整脚本传到测试库服务器上
1.开始打补丁
[oracle@test 29997937]$ cd /home/oracle/setup/29997937
[oracle@test 29997937]$ ls
etc  files  README.txt
[oracle@test 29997937]$ /u01/app/oracle/product/19.3.0/db_1/OPatch/opatch apply
可以通过optach lsinv查看补丁是否成功打上
2.补丁打上之后,就可以通过脚本调整:
SQL> @/home/oracle/setup/DBMS_DST_scriptsV1.9/upg_tzv_check.sql   先执行检查脚本

SQL> @/home/oracle/setup/DBMS_DST_scriptsV1.9/upg_tzv_apply.sql    再执行调整脚本
期间会重启数据库

select * from v$timezone_file;
FILENAME            VERSION         CON_ID
------------           ---------------  --------------
timezlrg_34                            34                   0

再次查看测试库时区版本,已经升级到34









欢迎光临 重庆思庄Oracle、KingBase、PostgreSQL、Redhat认证学习论坛 (http://bbs.cqsztech.com/) Powered by Discuz! X3.2