ORACLE 数据库升级测试 负责:张标 时间:2010-10-27 目的:测试ORACLE 数据库升级. 说明:当前的操作系统是RHEL5,在上面布署了ORACLE10G 10.2.0.4由于应用需求,需要对当前的数据库版本做升级,升级目标:ORACLE 10G 10.2.0.5 一. 下载并解压对应补丁包: P6810189_10204_Linux-x86.zip 是下载的补丁安装包,Disk1 是解压后的一个目录. 注:检查该目录的权限应该为 ORACLE 用户所有. 二. 确定当前数据库的版本: 确认数据库的相关信息: 三. 关闲所有的 ORACLE 服务: $shutdown immediate >lsnrctl stop >emctl stop dbconsole >ps –ef |grep oracle 三. 备份 ORACLE 软件和 ORACLE 数据库: 1.备份 ORACLE 软件安装包: Tar cvf soft_old.tar product/ oraInventory/ 2.备份 ORACLE 数据库: $rman target / >backup database; 五.升级 ORACLE 数据库软件. 执行/oracle/Disk1/下的 runsintaller $./runInstaller 将出现如个画面:(如有乱码问题,先设置 export LANG=zh_CH.GB2312,然后再执行) 点击Nex t. 检查结果通过,如果系统有ORACLE 运行的进程,则可能会在这步通不过,此时去杀掉ORACLE 的进程,然后再重试. 查看检查的结果,有些会有报错. 原先安装数据库设置的参数太小,有些需要修改: 这里的参数我已按要求做了修改. 点击下一步. 点击Install. 开始执行安装. 以 ROOT 用户去执行该脚本,然后点击 OK. 完成基本安装. 六.以命令行的方式执行 ORACLE 数据库的升级. 1.以SYS 身份登录 ORACLE,并启动到升级模式. SQL>CONN SYS AS SYSDBA SQL> STARTUP UPGRADE 2.执行数据库升级脚本. SQL> STARTUP UPGRADE SQL> SPOOL patch.log SQL> @/u 01/oracle/produ ct/10.2/db_1/rdbms/admin/catu pgrd.sql SQL> SHUTDOWN IMMEDIATE SQL> SPOOL OFF 查看PATCH.LOG 确认有无出错. 3.打开数据库,重新编译数据库对象. SQL> STARTUP SQL> @/u 01/oracle/produ ct/10.2/db_1/rdbms/admin/u tlrp.sql 4.正常关闭数据库,并以正常方式启动数据库. SQL> SHUTDOWN IMMEDIATE SQL> STARTUP 5.检查当前的数据库版本. 七.检查数据库和应用,确保升级所带来的影响. 八.升级过程遇到的问题及解决办法. 查看警告文件获取本次升级时遇到的一些问题. >>数据库软件升级检查时有错,主要是系统参数设置(需要调高,可参看检查结果). >>在数据库升级时遇到升级挂起的情况,警告文件告之归档空间不足; >>警告文件中记录升级时检查点失败,原因是日志组来不及转换,即日志组过少. 其他:升级时极其消耗 CPU 和内存,交换空间都用了不少,系统运行明显缓慢. 建议在升级时尽量选在系统空闲时期做. 1.升级时占用的归档空间相当大,应该在升级前做好调整. 2.升级前多增加一两组日志组文件,可加快升级.