当前位置: Oracle DBA培训网-优技培训 >> oracle技术 >

oracle 12c:新特性-数据库升级改进

oracle 12c:新特性-数据库升级改进

每当一个新的Oracle版本发布,DBA所要面临的挑战就是升级过程。该部分我将介绍12c中引入的针对升级的两个改进。

预升级脚本

在12c R1中,原有的utlu[121]s.sql 脚本由一个大为改善的预升级信息脚本preupgrd.sql所取代。除了预升级检查验证,此脚本还能以修复脚本的形式解决在升级过程前后出现的各种问题。

可以对产生的修复脚本加以执行来解决不同级别的问题,例如,预升级和升级后的问题。当手动升级数据库时,脚本必须在实际升级过程初始化之前加以手动执行。然而,当使用DBUA工具来进行数据库升级时,它会将预升级脚本作为升级过程的一部分加以自动执行,而且会提示你去执行修复脚本以防止报错。

如何执行脚本:

SQL> @$ORACLE_12GHOME/rdbms/admin/preupgrd.sql

以上脚本会产生一份日志文件以及一个[pre/post]upgrade_fixup.sql 脚本。所有这些文件都位于$ORACLE_BASE/cfgtoollogs 目录下。在你继续真正的升级过程之前,你应该浏览日志文件中所提到的建议并执行脚本以修复问题。

注意:你要确保将preupgrd.sql和utluppkg.sql 脚本从12c Oracle的目录home/rdbms/admin directory拷贝至当前的Oracle的database/rdbms/admin路径。

并行升级功能

数据库升级时间的长短取决于数据库上所配置的组件数量,而不是数据库的大小。在之前的版本中,我们是无法并行运行升级程序,从而快速完成整个升级过程的。

在12c R1中,原有的catupgrd.sql 脚本由catctl.pl 脚本(并行升级功能)替代,现在我们可以采用并行模式运行升级程序了。

以下流程说明了如何初始化并行升级功能(3个过程);你需要在升级模式下在启动数据库后运行这一脚本:

cd $ORACLE_12_HOME/perl/bin $ ./perl catctl.pl –n 3 -catupgrd.sql

以上两个步骤需要在手动升级数据库时运行。而DBUA也继承了这两个新变化。

技术沙龙MORE+

Oracle技术沙龙:【数据保护顶尖技术-MAA】首次全国首播12c MAA技术 云数据库加上MAA技术组成最豪华的技...
Oracle技术沙龙第49期:【Oracle 数据库云技术分享】Oracle技术沙龙第49期:【Oracle 数据库云技术分享】本次技术沙...
Oracle技术沙龙第48期:【Oracle 12c RAC安装】小编:今天讲什么内容呢?以后有什么用呢? 大师:今天讲的是12c...
我要参加技术沙龙

关闭