Oracle 10g升级PSU (p9352164)

来源:互联网 发布:绿色文明网络手抄报 编辑:程序博客网 时间:2024/06/03 17:40

Oracle 10g升级PSU

 

一. 什么是PSU/CPU

 

CPU: Critical Patch Update

Oracle对于其产品每个季度发行一次的安全补丁包,通常是为了修复产品中的安全隐患。

 

PSU: Patch Set Updates

Oracle对于其产品每个季度发行一次的补丁包,包含了bug的修复。Oracle选取被用户下载数量多的,并且

被验证过具有较低风险的补丁放入到每个季度的PSU中。在每个PSU中不但包含Bug的修复而

 

且还包含了最新的CPU。

 

二. 如何查找最新的PSU

 

每个数据库版本都有自己的PSU,PSU版本号体现在数据库版本的最后一位,比如最新的10.2.0.5的PSU是

10.2.0.5.3,而11.2.0.2的最新PSU则是11.2.0.2.2。

MOS站点中Oracle Recommended Patches — Oracle Database [ID 756671.1] 文档中查到各个产品版本最

新的PSU。

如果你记不住这个文档号,那么在MOS中以“PSU”为关键字搜索,通常这个文档会显示在搜索结果的最前面

 

注意:必须购买了Oracle基本服务获取了CSI号以后才有权限登陆MOS站点。

 

三. 如何正确安装PSU

 

每个PSU安装包中都包含一个README.html文档,其中描述了如何安装该PSU,有些PSU是可以直接安装的,而

有些PSU则必须要求安装了上一个版本的PSU之后才能继续安装。比如对于10.2.0.4版本的

 

数据库来说,PSU 10.2.0.4.4可以直接安装在最原始的10.2.0.4.0版本中,而最新的PSU 10.2.0.4.8则必须

要求先安装10.2.0.4.4。这些信息在README.html中都可以找到,所以请仔细阅读该文档

 

通常安装PSU是比较简单的,步骤如下:

1) 安装PSU需要使用到opatch,在README.html中有描述该PSU需要的最低版本opatch,如果当前opatch版本

过低,则需要先下载 Patch 6880880,该Patch中包含最新的opatch,只需要解压覆盖原

 

先的$ORACLE_HOME/OPatch目录即可。

 

查看当前的opatch版本,可以使用opatch version命令。

$ cd $ORACLE_HOME

$ cd OPatch

$ ./opatch version

 

Invoking OPatch 10.2.0.4.2

OPatch Version: 10.2.0.4.2

OPatch succeeded.

 

版本太低,先更新OPatch。补丁包:p6880880_102000_LINUX.zip

解压缩后直接替换掉$ORACLE_HOME目录下的OPatch文件。

$ /u01/app/oracle/product/10.2.0/client_1/OPatch/opatch version
Invoking OPatch 10.2.0.5.1

OPatch Version: 10.2.0.5.1

OPatch succeeded.

 


然后到PSU包目录下:

解压并授权oracle,打开终端,用oracle用户执行命令,cd到该目录下,如/app/install/9352164,执行命令

[oracle@QL-LINUX 9352164]$ /u01/app/oracle/product/10.2.0/client_1/OPatch/opatch apply


开始执行.................

Return Code = 0

The local system has been patched and can be restarted.


OPatch succeeded.


[oracle@QL-LINUX 9352164]$ export ORACLE_SID=orcl
[oracle@QL-LINUX 9352164]$ echo $ORACLE_SID
orcl
[oracle@QL-LINUX 9352164]$ sqlplus /nolog
SQL> connect sys/password as sysdba
Connected to an idle instance.

SQL> startup
ORACLE instance started.

Total System Global Area  285212672 bytes
Fixed Size                  1267068 bytes
Variable Size             155191940 bytes
Database Buffers          125829120 bytes
Redo Buffers                2924544 bytes
Database mounted.
Database opened.

SQL> @?/rdbms/admin/catbundle.sql psu apply
等待........
SQL> @?/rdbms/admin/utlrp.sql
继续等待........
PL/SQL procedure successfully completed.

SQL> select action,comments from registry$history;

ACTION                         COMMENTS
------------------------------ --------------------------------------------------
UPGRADE                        Upgraded from 10.2.0.1.0

APPLY                          PSU 10.2.0.4.4

3 rows selected.

SQL> select * from v$version;

BANNER
----------------------------------------------------------------
Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - Prod

PL/SQL Release 10.2.0.4.0 - Production

CORE    10.2.0.4.0      Production

TNS for Linux: Version 10.2.0.4.0 - Production

NLSRTL Version 10.2.0.4.0 - Production

5 rows selected.


SQL> shutdown immediate

Database closed.

Database dismounted.

ORACLE instance shut down.


 

原创粉丝点击