1.ORACLE 软件作备份和全库的备份,包括初始化参数文件
2.为升级设置系统环境
这里先解压缩补丁文件
unzip ****.zip
3.关闭所有实例和监听
为保证比较快速关闭,杀掉所有连接后,shutdown
ps -ef|grep $ORACLE_SID|grep -v ora_|grep LOCAL=NO|awk '{print $2}'|xargs kill -9
alter system checkpoint;
shutdown immediate;
lsnrctl stop;
4.设置DISPLAY后,执行升级程序,如:
Bourne, Bash, or Korn shell:
$ DISPLAY=local_host:0.0 ; export DISPLAY
C shell:
% setenv DISPLAY local_host:0.0
./runInstaller
这个过程中会提示run root.sh脚本,
必须使用root身份打开终端,如果是rac必须在每个node上run
5.检查system表空间,空闲空间必须保证至少10MB,以及shared_pool_size和java_pool_size必须不少于150MB
6.设置cluster_database的值为false,如:
sql>conn / as sysdba
sql>alter system set cluster_database=false scope=spfile;
sql>shutdown immediate;
7.在一个实例下执行脚本,
sql>startup migrate
sql>spool patch.log
sql>@?/rdbms/admin/catpatch.sql
sql>spool off;
执行完后,查看patch.log,如果没有错误继续执行下面脚本,否则重新执行catpatch.sql脚本
sql>shutdown ;
sql>startup
以下脚本为重新编译所有失效对象
sql>@?/rdbms/admin/utlrp.sql
8.以及脚本执行完以后,设置cluster_database的值为true.
sql>alter system set cluster_database=true scope=spfile;
sql>shutdown
sql>startup;
9.这里附上删除patch set software的过程:
Removing the Patch Set Software
Before restoring the Oracle home to the original release, perform the following steps:
$ sqlplus /nolog
SQL> connect / AS SYSDBA
SQL> SHUTDOWN
SQL> STARTUP MIGRATE
SQL> SPOOL catbkout.out
SQL> @?/rdbms/admin/catbkout.sql
SQL> SHUTDOWN IMMEDIATE
$ sqlplus /nolog
SQL> connect / AS SYSDBA
SQL> STARTUP MIGRATE
SQL> SPOOL catpatch.out
SQL> @?/rdbms/admin/catpatch.sql
SQL> STARTUP
SQL> @?/rdbms/admin/utlrp.sql
注意,在升级过程中,如果运行完./runInstaller后出现select nodes画面而无法选择节点时,不用理会,直接执行下一步,等完成后,检查各节点的ORACLE软件,是否已经完成软件升级,如果有某些节点没有完成,把$ORACLE_HOME下所有文件tar到另外一个节点(之前将另一节点$ORACLE_HOME下所有文件备份与全部删除),这样也是一样的方法。Tar之前先作relink all,
有时候在执行runInstaller的时候也会出现一些文件需要作relink.
这时候可以打开make.log.看哪些文件出现了比较严重的错误,这时候可以适当的作make.然后重新运行./runInstaller程序.
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/104152/viewspace-139975/ ,如需转载,请注明出处,否则将追究法律责任。