操作系统版本
linux x86 32bit as 4 2.6.9-5.EL
oracle 版本
10.1.0.3
1、停止实例
sqlplus "/as sysdba"
shutdown immediate
2、应用补丁
[oracle@localhost 3446722]$ opatch apply
PERL5LIB=/opt/oracle/app/product/10.1.0/db/perl/lib/5.6.1:/opt/oracle/app/product/10.1.0/db/OPatch/perl_modules; export PERL5LIB
/opt/oracle/app/product/10.1.0/db/perl/bin/perl /opt/oracle/app/product/10.1.0/db/OPatch/opatch.pl apply
Oracle Home = /opt/oracle/app/product/10.1.0/db
Location of Oracle Inventory = /opt/oracle/app/product/10.1.0/db/inventory
Oracle Universal Installer shared library = /opt/oracle/app/product/10.1.0/db/oui/lib/linux/liboraInstaller.so
Path to Java = /opt/oracle/app/product/10.1.0/db/jre/1.4.2/bin/java
Location of Oracle Inventory Pointer = /etc/oraInst.loc
Location of Oracle Universal Installer components = /opt/oracle/app/product/10.1.0/db/oui
Required Jar File under Oracle Universal Installer = jlib/OraInstaller.jar
OPatch Version 1.0.0.0.50
Perl Version 5.006001
/opt/oracle/app/product/10.1.0/db/OPatch/opatch.pl version: 1.0.0.0.50
Copyright (c) 2001-2004 Oracle Corporation. All Rights Reserved.
Some commands below are not in your path:
Command= fuser
Path= /usr/kerberos/bin:/usr/local/bin:/bin:/usr/bin:/usr/X11R6/bin:/home/oracle/bin:/home/oracle/bin:/opt/oracle/app/product/10.1.0/db/bin:/opt/oracle/app/product/10.1.0/db/OPatch:/home/oracle/bin:/home/oracle/bin:/opt/oracle/app/product/10.1.0/db/bin:/opt/oracle/app/product/10.1.0/db/OPatch
ERROR: OPatch failed because of Path problem.
---提示fuser命令找不到,fuser命令的path没有设置
[oracle@localhost 3446722]$ export PATH=$PATH:/sbin--------设置fuser的path
[oracle@localhost 3446722]$ opatch apply
PERL5LIB=/opt/oracle/app/product/10.1.0/db/perl/lib/5.6.1:/opt/oracle/app/product/10.1.0/db/OPatch/perl_modules; export PERL5LIB
/opt/oracle/app/product/10.1.0/db/perl/bin/perl /opt/oracle/app/product/10.1.0/db/OPatch/opatch.pl apply
Oracle Home = /opt/oracle/app/product/10.1.0/db
Location of Oracle Inventory = /opt/oracle/app/product/10.1.0/db/inventory
Oracle Universal Installer shared library = /opt/oracle/app/product/10.1.0/db/oui/lib/linux/liboraInstaller.so
Path to Java = /opt/oracle/app/product/10.1.0/db/jre/1.4.2/bin/java
Location of Oracle Inventory Pointer = /etc/oraInst.loc
Location of Oracle Universal Installer components = /opt/oracle/app/product/10.1.0/db/oui
Required Jar File under Oracle Universal Installer = jlib/OraInstaller.jar
OPatch Version 1.0.0.0.50
Perl Version 5.006001
Please shut down Oracle instances running out of this ORACLE_HOME
(Oracle Home = /opt/oracle/app/product/10.1.0/db)
Is this system ready for updating?
Please respond Y|N >
y
Patching...
Updating inventory...
/opt/oracle/app/product/10.1.0/db/OPatch/opatch.pl version: 1.0.0.0.50
Copyright (c) 2001-2004 Oracle Corporation. All Rights Reserved.
OPatch succeeded.
3、检查补丁是否应用成功
[oracle@localhost 3446722]$ opatch lsinventory
PERL5LIB=/opt/oracle/app/product/10.1.0/db/perl/lib/5.6.1:/opt/oracle/app/product/10.1.0/db/OPatch/perl_modules; export PERL5LIB
/opt/oracle/app/product/10.1.0/db/perl/bin/perl /opt/oracle/app/product/10.1.0/db/OPatch/opatch.pl lsinventory
Using ORACLE_HOME/oui to look up oui libs...
Oracle Home = /opt/oracle/app/product/10.1.0/db
Location of Oracle Inventory = /opt/oracle/app/product/10.1.0/db/inventory
Oracle Universal Installer shared library = /opt/oracle/app/product/10.1.0/db/oui/lib/linux/liboraInstaller.so
Path to Java = /opt/oracle/app/product/10.1.0/db/jre/1.4.2/bin/java
Location of Oracle Inventory Pointer = /etc/oraInst.loc
Location of Oracle Universal Installer components = /opt/oracle/app/product/10.1.0/db/oui
Required Jar File under Oracle Universal Installer = jlib/OraInstaller.jar
Using ORACLE_HOME/oui to look up oui libs...
Accessing inventory... This may take up to 300 seconds.
(retry 10 times, delay 30 seconds each time)
/opt/oracle/app/product/10.1.0/db/jre/1.4.2/bin/java -classpath "/opt/oracle/app/product/10.1.0/db/oui/jlib/OraInstaller.jar:/opt/oracle/app/product/10.1.0/db/oui/jlib/srvm.jar:/opt/oracle/app/product/10.1.0/db/OPatch/jlib/opatch.jar:/opt/oracle/app/product/10.1.0/db/oui/jlib/xmlparserv2.jar:/opt/oracle/app/product/10.1.0/db/oui/jlib/share.jar:." -Dopatch.retry=10 -Dopatch.delay=30 opatch/LsInventory "/opt/oracle/app/product/10.1.0/db/oui" "/opt/oracle/app/product/10.1.0/db" opatch.pl 1.0.0.0.50 FALSE
Retrieving inventory.
Installed Patch List:
=====================
1) Patch 3446722 applied on Sun Feb 24 18:38:11 CST 2008
[ Base Bug(s): 3446722 ]
/opt/oracle/app/product/10.1.0/db/OPatch/opatch.pl version: 1.0.0.0.50
Copyright (c) 2001-2004 Oracle Corporation. All Rights Reserved.
OPatch succeeded.
4、回滚补丁
[oracle@localhost 3446722]$ opatch rollback -id 3446722
PERL5LIB=/opt/oracle/app/product/10.1.0/db/perl/lib/5.6.1:/opt/oracle/app/product/10.1.0/db/OPatch/perl_modules; export PERL5LIB
/opt/oracle/app/product/10.1.0/db/perl/bin/perl /opt/oracle/app/product/10.1.0/db/OPatch/opatch.pl rollback -id 3446722
OPatch Version 1.0.0.0.50
Perl Version 5.006001
Oracle Home = /opt/oracle/app/product/10.1.0/db
Location of Oracle Inventory = /opt/oracle/app/product/10.1.0/db/inventory
Oracle Universal Installer shared library = /opt/oracle/app/product/10.1.0/db/oui/lib/linux/liboraInstaller.so
Path to Java = /opt/oracle/app/product/10.1.0/db/jre/1.4.2/bin/java
Location of Oracle Inventory Pointer = /etc/oraInst.loc
Location of Oracle Universal Installer components = /opt/oracle/app/product/10.1.0/db/oui
Required Jar File under Oracle Universal Installer = jlib/OraInstaller.jar
Please shut down Oracle instances running out of this ORACLE_HOME
(Oracle Home = /opt/oracle/app/product/10.1.0/db)
Is this system ready for updating?
Please respond Y|N >
y
Removing Patch...
Updating inventory...
/opt/oracle/app/product/10.1.0/db/OPatch/opatch.pl version: 1.0.0.0.50
Copyright (c) 2001-2004 Oracle Corporation. All Rights Reserved.
OPatch succeeded.
5、检查回滚是否成功
[oracle@localhost 3446722]$ opatch lsinventory
PERL5LIB=/opt/oracle/app/product/10.1.0/db/perl/lib/5.6.1:/opt/oracle/app/product/10.1.0/db/OPatch/perl_modules; export PERL5LIB
/opt/oracle/app/product/10.1.0/db/perl/bin/perl /opt/oracle/app/product/10.1.0/db/OPatch/opatch.pl lsinventory
Using ORACLE_HOME/oui to look up oui libs...
Oracle Home = /opt/oracle/app/product/10.1.0/db
Location of Oracle Inventory = /opt/oracle/app/product/10.1.0/db/inventory
Oracle Universal Installer shared library = /opt/oracle/app/product/10.1.0/db/oui/lib/linux/liboraInstaller.so
Path to Java = /opt/oracle/app/product/10.1.0/db/jre/1.4.2/bin/java
Location of Oracle Inventory Pointer = /etc/oraInst.loc
Location of Oracle Universal Installer components = /opt/oracle/app/product/10.1.0/db/oui
Required Jar File under Oracle Universal Installer = jlib/OraInstaller.jar
Using ORACLE_HOME/oui to look up oui libs...
Accessing inventory... This may take up to 300 seconds.
(retry 10 times, delay 30 seconds each time)
/opt/oracle/app/product/10.1.0/db/jre/1.4.2/bin/java -classpath "/opt/oracle/app/product/10.1.0/db/oui/jlib/OraInstaller.jar:/opt/oracle/app/product/10.1.0/db/oui/jlib/srvm.jar:/opt/oracle/app/product/10.1.0/db/OPatch/jlib/opatch.jar:/opt/oracle/app/product/10.1.0/db/oui/jlib/xmlparserv2.jar:/opt/oracle/app/product/10.1.0/db/oui/jlib/share.jar:." -Dopatch.retry=10 -Dopatch.delay=30 opatch/LsInventory "/opt/oracle/app/product/10.1.0/db/oui" "/opt/oracle/app/product/10.1.0/db" opatch.pl 1.0.0.0.50 FALSE
Retrieving inventory.
There is no Interim Patch
/opt/oracle/app/product/10.1.0/db/OPatch/opatch.pl version: 1.0.0.0.50
Copyright (c) 2001-2004 Oracle Corporation. All Rights Reserved.
OPatch succeeded.