您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息

Oracle数据库如何从11.2 降级至之前的版本

2024/4/29 2:12:43发布25次查看
本文档可用作将之前升级的数据库从 oracle 11gr2 降回至下列以前版本数据库的指南与核对表:oracle 10gr1、oracle 10gr2、oracle
本文档可用作将之前升级的数据库从 oracle 11gr2 降回至下列以前版本数据库的指南与核对表:oracle 10gr1、oracle 10gr2、oracle 11gr1。该文档内容也适用于从 11.2.0.4 降级至 11.2.0.1
需要特别注意的是,在将数据库实例从当前版本降级至升级前版本时,数据库不会返回至与其升级前相同的状态。升级过程会导致一些不可逆的更改,具体取决于涉及的版本。降级过程允许用户在之前版本中打开并访问数据库实例。这通常就足够了。
此外,在降级后可能需要采取一些更正操作(如卸载/重新安装,或重新升级至当前修补程序集级别),以解决残留问题。
如果目标是将实例完全返回至其升级前的状态,那么将会用到包括恰好恢复至升级前状态在内的其他流程。
本文章中讨论的过程是基于脚本的降级。本文章并未讨论如何使用导入/导出、数据泵或其他方法将数据从一个版本移至另一个版本。
开始降级过程之前,在服务器上应该有或已安装要降至版本的 oracle 二进制文件。如果已卸载了希望降至版本的 oracle 可执行文件,请将该 oracle 二进制文件重新安装至正确的版本/修补程序级别,以便进行降级。
在centos 6.4下安装oracle 11gr2(x64)
oracle 11gr2 在vmware虚拟机中安装步骤
debian 下 安装 oracle 11g xe r2
注意事项:
示例:  对于 exadata bundle patch,过程为:
卸载 patch
                示例:  $ opatch auto /u01/app/oracle/patches/14103267 -rollback
回滚sql的变更    
                示例:  sql> @rdbms/admin/catbundle_exa__rollback.sql  rollback sql 变更.
解决方案降级前步骤:1: 验证所有组件和字典对象对于 11gr2 均有效并且版本正确。
set pagesize500 
set linesize 100
select substr(comp_name,1,40) comp_name, status, substr (version,1,10) version from dba_registry order by comp_name;
select substr(object_name,1,40) object_name,substr(owner,1,15) owner, object_type from  dba_objects where status='invalid' order by owner,object_type;
select owner,object_type,count(*) from dba_objects where status='invalid'  group by owner,object_type order by owner,object_type;
如果任何组件或 oracle 提供的对象无效,则需要运行 utlrp.sql 对其进行重新验证。该脚本可能需要运行多次以验证所有对象。
$ cd $oracle_home/rdbms/admin 
$ sqlplus / as sysdba 
sql> @utlrp.sql
当完成后,重新运行上述查询以验证所有无效对象现在都是有效的。
2: 如果已在数据库上启用了 oracle database vault,则必须:
a: 授予 sys 帐户 database vault dv_patch_admin 角色。
b: 降级数据库之前禁用 database vault。
禁用 oracle database vault 触发器:
      sql> connect dvsys/dvsys  
      sql> alter trigger dv_before_ddl_trg disable;  
      sql> alter trigger dv_after_ddl_trg disable; 
3: 如果设置了操作系统参数 ora_tzfile,请取消其设置。如果不取消设置 ora_tzfile 变量,连接至数据库时可能会生成以下错误:
sp2-1503: unable to initialize oracle call interface 
sp2-0152: oracle may not be functioning properly
4: 如果在降级至之前的数据库版本之前,已运行 dbms_dst 软件包将时区版本升级至新版本(例如在 11gr2 升级的升级后步骤期间升级至版本 11),那么必须将版本 11 时区文件安装到旧的 oracle 数据库版本上的 $oracle_home/oracore/zoneinfo 目录中。
5: 检查数据库的兼容性级别,以确定数据库是否可能具有防止降级的不兼容性。曾经设置过的 compatible 的最高值就是您能降级到的最低的那个版本。比如:
如果数据库的兼容性级别已经是最新的了(比如11.2.0.4),则无法进行降级。
如果数据库的兼容性级别曾经是 11.2.0 或更高,则无法将数据库降级到比 11.2.0.1 更低的版本 。
如果要将数据库降级至 11gr1,compatible 初始化参数必须从未比 11.1.0 更高。
如果要将数据库降级至 10gr2,compatible 初始化参数必须从未比 10.2.0 更高。
如果要将数据库降级至 10gr1,compatible 初始化参数必须从未比 10.1.0 更高。
6: 如果数据库上安装有 oracle application express,则必须将 apxrelod.sql 文件从 oracle 11gr2 (11.2) oracle_home/apex/ 目录复制到 oracle 主目录之外的某个目录,如系统上的临时目录。记下该文件的新位置。
7: 在降级之前执行 11gr2 数据库的备份。
数据库的降级步骤如果要从 11.2.0.4 降级至 11.2.0.2,使用 11.2.0.2 catrelod.sql 脚本会出现一个问题。
针对版本 11.2.0.2 下载并应用修补程序 11811073,其提供了更新版本的 catrelod.sql。
1: 以 oracle database 11g release 2 (11.2) oracle 主目录的所有者登录系统。
2: 如果已针对数据库配置并运行了 enterprise manager database control,则按如下所示停止database control:
a: 将 oracle_unqname 环境变量设置为数据库唯一名称。
b: 运行以下命令:racle_home/bin/emctl stop dbconsole
3: 如果要降级的数据库是 oracle real application clusters (oracle rac) 数据库,则在所有实例上执行该步骤。
该用户其它信息

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录 Product