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

相关推荐
夜影风2 小时前
Redis集群创建时出现“Node xxx.xxx is not empty”问题处理
数据库·redis·缓存
utf8mb4安全女神2 小时前
【Redis数据库】哨兵集群/redis集群/安装配置/主从复制/数据持久化操作/数据结构/安全限制/PHP redis/
linux·服务器·数据结构·数据库·redis·缓存
lzz的编码时刻2 小时前
Liquibase 入门实战教程
数据库·运维开发
Zk.Sun2 小时前
Linux设置触屏双击距离容差
linux·运维·数据库
腾讯云大数据3 小时前
腾讯云TBDS面向AI时代的多模态智算平台,助力企业AI转型
人工智能·云计算·腾讯云·tbds
山峰哥4 小时前
数据库工程:Explain执行计划对比实战指南‌
数据库·sql·oracle·深度优先·宽度优先
不知疲倦的仄仄4 小时前
ShardingSphere:高效管理数据库集群的终极方案
sql·mysql·oracle·database
crisps_ww4 小时前
自媒体运营分析-BI可视化仪表盘制作
数据库
Geek-Chow4 小时前
微服务认证与授权:01 — 概念
java·前端·数据库
烤代码的吐司君4 小时前
Redis IO 多路复用原理与引入原因深度解析
数据库·redis·php