打PSU补丁
首先需要将PSU补丁工具复制到oracle_home下面。
$cd /oracle/product/11.2.0/db_1
$mv OPatch OPatch_old
$cp –r /install/psu/OPatch
.
进入到PSU补丁所在文件夹
$cd /install/psu/18522509
$ export PATH=$PATH:/usr/ccs/bin
$/oracle/product/11.2.0/db_1/OPatch/opatch apply
–local
安装过程中如果要输入email可以直接回车跳过;
在数据库中应用psu
[# su - oracle
$ cd $ORACLE_HOME
$ cd rdbms/admin
$ sqlplus /nolog
SQL*Plus: Release 11.2.0.4.0 Production on Thu Aug 7 17:41:52
2014
Copyright (c) 1982, 2013, Oracle. All rights reserved.
SQL> conn / as sysdba
Connected.
SQL> @catbundle.sql psu
apply
升级数据字典
Start the database in the UPGRADE mode:
$export ORALCE_SID=orcl
#注意,如果sqlplus / as
sysdba执行时需要输入用户名和密码,且无论怎么输入都错误,是因为oracle_sid没有设置或无法识别。
$sqlplus
/ as sysdba
SQL> STARTUP
UPGRADE
2.
SQL> SPOOL upgrade_info.log
#如果创建失败,检查oracle对当前所在的文件夹权限
SQL> @?/rdbms/admin/utlu102i.sql
SQL> SPOOL OFF
3.
SQL> SPOOL patch.log
SQL> @?/rdbms/admin/catupgrd.sql #时间较长,配置较好情况下要半小时,可以放到后台运行。
SQL> SPOOL OFF
放到后台运行方法:
$vi upgrade.sh
sqlplus / as sysdba <
SPOOL patch.log
@?/rdbms/admin/catupgrd.sql
SPOOL OFF
exit
运行:
$./
upgrade.sh
4.重启数据库
SQL>shutdown immediate
SQL>startup
5.SQL> @?/rdbms/admin/utlrp.sql
察看数据库安装的组件、版本、状态:
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
验证PSU安装信息:
[oracle@localhost ~]$ cd
$ORACLE_HOME/OPatch
[oracle@localhost
OPatch]$ ./opatch
lsinventory