服务环境:
操作系统:window service 2012 r2
原有数据库版本:12.2.0.1
采用升级方式:Oracle Database Upgrade Assistant(DBUA)(此方式为图形化安装、可以降低现场升级难度)
oracle官网升级指南:https://docs.oracle.com/en/database/oracle/oracle-database/19/upgrd/loe.html
部分摘录:
当前的版本 | 升级选项 |
---|---|
18(所有版本)、12.2.0.1、12.1.0.2、11.2.0.4 | 支持直接升级。使用当前的 Oracle 数据库升级指南(即本指南)执行升级。 |
12.1.0.1 11.2.0.1、11.2.0.2、11.2.0.3 11.1.0.6、11.1.0.7 10.2 或更早版本 | 不支持直接升级到 Oracle Database 19c。 解决方案:升级到可以直接升级到当前版本的中间 Oracle 数据库版本。将此版本中不支持直接升级的 Oracle 数据库版本升级到支持直接升级的中间 Oracle 数据库版本。 升级到中间版本的 Oracle 数据库时,请遵循中间版本文档中的说明,包括运行该中间版本的升级前脚本。完成对中间版本 Oracle 数据库的升级后,您可以将中间版本数据库升级到当前 Oracle 数据库版本。 如果您使用 Oracle Data Pump 导出/导入将数据迁移到新版本,则此限制不适用。 例如:
|
升级过程:
找一个空间大的磁盘、解压19C后直接运行下图(注:oracle19C迁移、是不允许修改oracle home路径、所以、建议把文件直接解压到oracle home路径下)
如发生下面报错、更换安装路径(比如C:\app\Administrator变更为C:\app1\Administrator)
注:具体根据线上环境配置!!!
响应文件保存到app1目录下、没有就创建一个
安装中
成功后关闭
使用oracle 19C软件迁移数据库
使用sqlplus修复
注:具体根据线上环境调整路径!!!
回车、执行完成
修复检查完成后、依然有这个异常、不管他、继续往下执行
接下来要等比较久一段时间
升级完成
整个升级过程中还碰到很多问题:
问题一、oracle 19c运行报错
解决方案:安装 VC_redist.x64.exe
问题二:安装VC_redist.x64.exe报错VC14(VC2015)安装失败,0x80240017
解决方案:系统打补丁
注意:必须按以下顺序安装更新: clearcompressionflag.exe(双击后无反应属于正常)、 KB2919442、KB2919355、 KB2932046、 KB2959977、 KB2937592、 KB2938439 和 KB2934018。
安装完成以后重启电脑再安装VC_redist.x64.exe
参考:VC14(VC2015)安装失败,0x80240017 - 未指定的错误,解决办法_量子物理学的博客-CSDN博客_0x80240017w
问题三:12C的DATA_PUMP_DIR 在升级完成以后导入、导出失败
报错:ORA-29283:无效的文件操作:意外的"LFI“错误
研究了半天没弄明白、linux系统大部分是文件权限问题、但是windows不清楚
在此我直接弃用、创建新的虚拟路径
- 创建oracle虚拟路径、(E:\app1\Administrator\virtual\admin\orcl\dpdump\)路径上没有的文件夹在系统中先手动创建、
PLSQL执行下面命令
-- Create directory
create or replace directory DATA_PUMP_DIR_N
as 'E:\app1\Administrator\virtual\admin\orcl\dpdump\';
执行完成以后查看一下、确定有DATA_PUMP_DIR_N
select * from dba_directories