AWS RDS Oracle hit ORA-39405

报错信息:

复制代码
ORA-39405: Oracle Data Pump does not support importing from a source database with TSTZ version 42 into a target database with TSTZ version 35.

分析过程:

这个报错是由于timezone_file的版本,源端比目标端高,于是impdp不支持。

这个报错是Oracle引擎本身的限制,参考Mos文章 ORA-39405: Oracle Data Pump Does Not Support Importing From A Source Database With TSTZ Version (Doc ID 2793311.1)

在原生Oracle上,将timezone_file的patch应用,完成升级即可解决。

那么如果AWS RDS Oracle 实例上,如果遇到这个报错,应该怎么解决呢?

解决方案:

有个误区,是可能此时大家会检查RDS Oracle的小版本,而后将目标端把版本升级到更高版本。但是timezone_file的版本,不一定会跟着RDS Oracle的升级而升级。

正确的方式是,根据文档[1], 首先将RDS Oracle的选项组,如果是默认选项组,那么需要更改为自建选项组。

而后在自建选项组中,将timezone_file_autoupgrade 这个选项添加上。

需要注意的是,根据文档[1], 打开此选项可能会导致几个小时的停机时间。当实例使用过时的时区文件版本时,可能会发生停机。或者,当引擎版本升级包含新的时区文件版本时,也可能会发生这种情况。

可以通过如下query查询timezone_file的版本:

复制代码
select * from v$timezone_file;

参考文档:

1\] [Downtime during the time zone file update - Amazon Relational Database Service](https://docs.amazonaws.cn/en_us/AmazonRDS/latest/UserGuide/Appendix.Oracle.Options.Timezone-file-autoupgrade.considerations.html "Downtime during the time zone file update - Amazon Relational Database Service")

相关推荐
duke8692672142 分钟前
C#怎么获取U盘的插拔事件_C#如何重写WndProc捕获消息【进阶】
jvm·数据库·python
Irene19914 分钟前
SQL示例:明辨窗口函数和聚合函数的使用和选择
mysql·oracle
数据库小学妹6 分钟前
CDC实时数据同步:让数据库变更秒级流向大数据平台!
大数据·数据库·mysql·kafka·dba
m0_690825827 分钟前
如何高效实现多用户通知系统而不造成数据库冗余
jvm·数据库·python
XZ-07000110 分钟前
MySQL-视图
数据库·mysql
2301_8125396711 分钟前
golang如何使用Fiber高性能框架_golang Fiber框架入门教程
jvm·数据库·python
2401_8800714014 分钟前
html标签如何提升可访问性_aria-label与title区别【指南】
jvm·数据库·python
2401_8504916516 分钟前
如何管理多个监听器_listener.ora中非默认端口配置实战
jvm·数据库·python
2301_7815714219 分钟前
Go语言如何用sqlx_Go语言sqlx数据库操作教程【入门】
jvm·数据库·python
2401_8800714020 分钟前
mysql安装后如何进行初始化安全配置_mysql_secure_installation实操
jvm·数据库·python