服务器基本信息:
ip:10.1.100.10 系统:linux5.7 数据库:oracle10.2.0.1 sys密码:oracle
建议:在升级前开启快照,升级失败直接快照回10.2.0.1版本。
1、升级前准备工作,数据库软件升级。
1.1、临时增加shared pool 和Java pool 的大小、创建临时表
su – oracle
sqlplus / as sysdba
startup
alter system set shared_pool_size='150M' scope=spfile;
alter system set java_pool_size='150M' scope=spfile;
create table test as select * from dual;
shutdown immediate
1.2、备份Oracle软件、备份数据库(主要是将数据库的目录)
cp -r $ORACLE_HOME/product/10.2.0/db_1 /backup/oracle_product_back
tar -cvfz /backup/oracle_backup.tar.gz /bk/oracle_product_back
1.3、停掉监听、OEM 、 ISQLPLUS等
lsnrctl stop
emctl stop dbconsole
isqlplusctl stop
1.4.上传10.2.0.5补丁包到/u01目录下,并且解压
p8202632_10205_Linux-x86-64.zip
chown -R oracle:oinnstall p8202632_10205_Linux-x86-64.zip
chmod -R 775 p8202632_10205_Linux-x86-64.zip
unzip p8202632_10205_Linux-x86-64.zip
1.5.开启x-start,进行可视化安装
cd /u01/disk1/
./runInstaller
过程图片略过,跟安装Oracle10g的步骤类似
2、数据库升级,升级及更新数据字典。
2.1、升级数据库
sqlplus / as sysdba
startup upgrade;
SPOOL patch.log
@?/rdbms/admin/catupgrd.sql //此脚本执行时间大概需要20分钟左右,升级脚本
Total Upgrade Time: 00:19:46 //设置JAVA_POOL_SIZE为150M时的升级所用时间
Total Upgrade Time: 01:15:47 //不设置JAVA_POOL_SIZE为150M时的升级所用时间,综上所述,建议设置JAVA_POOL_SIZE为150M这个参数,会加快升级的时间
SPOOL OFF
2.2、重编译失效对象
SQL>shutdown immediate
SQL> startup
SQL> @?/rdbms/admin/utlrp.sql
SQL> @?/rdbms/admin/catalog.sql;
SQL> @?/rdbms/admin/catproc.sql;
2.3、察看数据库安装的组件、版本、状态:
SQL> shutdown immediate;
SQL> startup
SQL> select owner,object_name,subobject_name,object_type,status from dba_objects where status<>'VALID';
SQL> select status from v$instance;
SQL> select * from v$version;
SQL> col comp_name format a30
SQL>col version format a30
SQL>col status format a10
SQL> SELECT comp_name, version, status FROM dba_registry
;
SQL>select username from dba_users;
SQL> quit
2.4、开启监听,OEM及ISQLPLUS
emctl start dbconsole
isqlplusctl start
lsnrctl start
2.5、验证数据
select * from test;
2.6、检查OEM、isqlpusl、isqlplus dba
http://ip:1158/em (IE方式访问OEM)
http://ip:5560/isqlplus (IE方式访问isqlplus)
http://ip:5560/isqlplus/dba (IE方式访问isqlplus dba)
2.7. 系统升级小结
以上升级操作可以总结为以下几个要点:
2.7.1
如果是全新安装的数据库,直接运行补丁包就可以了
p8202632_10205_LINUX.zip
./runInstaller
2.7.2
非全新安装的情况
如果是已经创建了数据库,并且有应用在上面,则先停止相关应用
再按以下步骤执行:
则必须根据以上2.1-2.6的所有全部步骤执行。
3、升级失败,尝试回退机制。
startup downgrade
spool downgrade.log
@catdwgrd.sql (10.2.0.1运行的是这个,而10.1降级用的是d92000.sql,即dold_release.sql)
spool off
shutdown immediate