首先下载好oracle9i的9208升级包,在前面的随笔里有下载,不贴了。
1.首先把oracle相关服务全部停止掉,就是进管理里的服务里面停掉相关服务即可,然后再CMD里 lsnrctl stop,这个需要先把CMD定位到oracle安装目录里的bin文件夹下。
2.设置oracle_home环境变量,应该是 ORACLE_HOME=C:\oracle\ora92 ,这是我的home安装目录,这个工作一定要做,否则会在打补丁的时候出错。
3.运行压缩包里的setup.exe,开始安装,比较简单,一路next,finish即可。
4.到这一步还没完全的更新补丁,所以还有工作要做。先启动oracle相关服务,简单点的就直接重启。
5.用sysdba身份登陆系统,我这里是这样登陆的:
sqlplus /nolog;
sql> connect /as sysdba;
这样登陆后,startup,然后确保init.ora中的参数SHARED_POOL_SIZE 和JAVA_POOL_SIZE 为150m,先查看下:
SQL>SHOW PARAMETER SHARED_POOL_SIZE;
SQL>SHOW PARAMETER JAVA_POOL_SIZE ;
如果不是150M,那么就这样改:
SQL> ALTER SYSTEM SET SHARED_POOL_SIZE='150M' SCOPE=spfile;
SQL> ALTER SYSTEM SET JAVA_POOL_SIZE='150M' SCOPE=spfile;
设置好以后,关闭数据库:shutdown immediate;
6.依然nolog登陆,用sysdba身份登陆(同5),执行:
SQL> STARTUP MIGRATE
SQL> SPOOL patch.log
SQL> @ORACLE_BASE\ORACLE_HOME\rdbms\admin\catpatch.sql
SQL> SPOOL OFF
spool patch.log是把做升级日志到patch.log,供以后察看。
其中ORACLE_BASE\ORACLE_HOME表示你的oracle目录,假设oracle安装目录为c:\oracle\ora92,则第三句应 为:
SQL>@c:\oracle\ora92\rdbms\admin\catpatch.sql 其中@表示执行以下脚本。
这个过程持续大概20分钟。
7.完成后shutdown数据库,然后startup,执行另外一个脚本
SQL> @ORACLE_BASE\ORACLE_HOME\rdbms\admin\utlrp.sql,完成后升级补丁打完!!