### LinuxRHEL5下ORACLE10g从10.2.0.4.0升级到10.2.0.5.0的操作指南
#### 一、文档更新记录与说明
- **文档更新记录**:该部分记录了文档的所有修订历史,包括日期、修订者以及修订的具体内容等信息,以便于跟踪文档的变化。
- **文档说明**:本文档旨在为数据库管理员(DBA)提供一套完整的Oracle 10g从10.2.0.4.0版本升级到10.2.0.5.0版本的流程和操作步骤,确保升级过程顺利进行。
#### 二、升级前的准备工作
##### 3.1.1 临时增加sharedpool和javapool的大小
- **目的**:确保参数`shared_pool_size`和`java_pool_size`至少为150M大小,以保证升级脚本`catupgrd.sql`能够正常运行。
- **操作步骤**:
- 使用`sqlplus / as sysdba`命令登录到数据库实例。
- 运行`alter system set shared_pool_size='150M' scope=spfile;`来设置`shared_pool_size`。
- 运行`alter system set java_pool_size='150M' scope=spfile;`来设置`java_pool_size`。
- 关闭数据库实例并重启,使新设置生效。
##### 3.1.2 冷备份Oracle软件和数据库
- **目的**:在进行升级前对现有Oracle软件和数据库进行完整备份,以防万一升级过程中出现问题,可以快速恢复到升级前的状态。
- **操作步骤**:
- 使用`tar`命令打包Oracle安装目录,例如:`tar cvf /u01/arch.tar.gz /u01/app/`。
##### 3.1.3 停止监听器、OEM、ISQLPLUS等服务
- **目的**:确保升级过程中不受任何外部访问的影响,并且避免潜在的数据一致性问题。
- **停止监听器**:通过运行`lsnrctl stop`命令来停止监听服务。
- **停止OEM(Oracle Enterprise Manager)**:使用`emctl stop dbconsole`命令来停止Oracle Enterprise Manager控制台。
- **停止ISQLPLUS等其他相关服务**:确保所有可能影响数据库升级的服务都已停止。
##### 3.1.4 上传补丁包
- **目的**:将升级所需的补丁包上传至服务器,为后续的安装做好准备。
- **操作步骤**:
- 上传Oracle官方发布的适用于当前环境的10.2.0.5.0补丁包至服务器指定目录。
#### 三、数据库软件产品的升级
##### 4.1.1 登录图形界面执行runInstaller,开启安装OUI界面
- **操作步骤**:
- 执行`runInstaller`脚本启动Oracle Universal Installer (OUI)。
- 按照提示选择升级选项,并根据实际情况选择相应的升级路径。
##### 4.1.2 OUI图形界面
- **操作步骤**:
- 跟随OUI向导逐步完成升级过程中的各项配置。
- 在每个步骤完成后点击“Next”按钮进入下一步。
##### 4.1.3 至4.1.7 继续按照OUI向导进行
- **操作步骤**:
- 在OUI的每一步中,仔细检查配置信息是否正确无误,并按照提示进行操作。
##### 4.1.8 安装完成
- **完成标志**:当出现安装完成的界面时,表示升级过程已完成。
- **操作步骤**:
- 根据提示执行必要的后处理任务,如运行特定的脚本来完成升级。
##### 4.1.9 执行脚本
- **目的**:运行特定脚本来完成最后的升级步骤。
- **操作步骤**:
- 运行提供的升级脚本,例如执行`@utlrp.sql`以重编译所有无效的对象。
- 查看输出结果以确认升级是否成功完成。
#### 四、进行数据库的升级操作
##### 5.1.1 开始升级及更新数据字典
- **操作步骤**:
- 执行升级脚本`@catupgrd.sql`来更新数据库的数据字典。
##### 5.1.2 重编译失效对象
- **操作步骤**:
- 运行`@utlrp.sql`脚本来重编译所有失效的对象。
##### 5.1.3 重新创建数据字典CATALOG.SQL
- **操作步骤**:
- 运行`@catalog.sql`脚本来重新创建数据字典。
##### 5.1.4 重新创建运行脚本CATPROC.SQL
- **操作步骤**:
- 执行`@catproc.sql`脚本以重新创建运行脚本。
##### 5.1.5 察看数据库安装的组件、版本、状态
- **操作步骤**:
- 使用`sqlplus / as sysdba`登录数据库。
- 查询`v$version`视图来查看当前数据库的版本信息。
#### 五、升级总结
##### 6.1.1 全新安装的情况
- **情况描述**:如果之前是全新安装,那么本次升级过程中可能不会遇到兼容性问题。
##### 6.1.2 非全新安装的情况
- **情况描述**:对于非全新安装的情况,可能需要特别注意旧版本与新版本之间的兼容性问题。
##### 6.1.3 升级失败,尝试回退机制
- **操作步骤**:
- 如果升级失败,可以根据之前的备份恢复到升级前的状态。
- 分析失败原因,并采取相应措施解决问题后再尝试升级。
#### 总结
通过以上步骤,您可以顺利完成Oracle 10g从10.2.0.4.0版本升级到10.2.0.5.0版本的过程。在整个升级过程中,请务必仔细阅读并遵循每一步骤的指导,确保数据的一致性和完整性。此外,在正式执行升级前,强烈建议在测试环境中模拟整个升级流程,以验证其可行性和安全性。