设为首页 收藏本站
查看: 1689|回复: 0

[经验分享] [Oracle] CPU/PSU补丁安装详细教程

[复制链接]

尚未签到

发表于 2018-9-7 11:54:23 | 显示全部楼层 |阅读模式
  阅读Readme文档
  每个CPU/PSU都有一个Readme文档,关于该CPU/PSU的所有信息都在Readme文档里,一定要仔细阅读。
  有两个部分要特别注意:
  1)OPatch的版本,你可以通过opatch version命令查看Oracle Home当前的OPatch版本,如果低于Readme规定的最低版本,一定要先升级OPatch才能打补丁。
  2)打Patch步骤:基本上所有的CPU/PSU都大同小异,具体步骤将在下面的例子中展示。
  安装CPU/PSU补丁
  1)事先检查:查看数据库打补丁前信息,保留现场
  在打补丁前最好把数据库的一些基本信息保留下来,以备不时之需。
  --查看实例名
sys@ORCL>select instance_name,status from v$instance;  INSTANCE_NAME    STATUS
  ---------------- ------------
  orcl             OPEN
  --查看数据库版本
sys@ORCL>select * from v$version;  BANNER
  --------------------------------------------------------------------------------

  Oracle Database 11g Enterprise Edition>
  PL/SQL>  CORE    11.2.0.1.0      Production
  TNS for Linux: Version 11.2.0.1.0 - Production
  NLSRTL Version 11.2.0.1.0 - Production
  --查看数据库大小
sys@ORCL>select sum(bytes)/1024/1024||'M' from dba_segments;  SUM(BYTES)/1024/1024||'M'
  -----------------------------------------
  68058.375M
  --查看组件信息
sys@ORCL>select COMP_ID,COMP_NAME,VERSION,STATUS from DBA_REGISTRY;  COMP_ID              COMP_NAME                                          VERSION                        STATUS
  -------------------- -------------------------------------------------- ------------------------------ ----------------------
  OWB                  OWB                                                11.2.0.1.0                     VALID
  APEX                 Oracle Application Express                         3.2.1.00.10                    VALID
  EM                   Oracle Enterprise Manager                          11.2.0.1.0                     VALID
  AMD                  OLAP Catalog                                       11.2.0.1.0                     VALID
  SDO                  Spatial                                            11.2.0.1.0                     VALID
  ORDIM                Oracle Multimedia                                  11.2.0.1.0                     VALID
  XDB                  Oracle XML Database                                11.2.0.1.0                     VALID
  CONTEXT              Oracle Text                                        11.2.0.1.0                     VALID
  EXF                  Oracle Expression Filter                           11.2.0.1.0                     VALID
  RUL                  Oracle Rules Manager                               11.2.0.1.0                     VALID
  OWM                  Oracle Workspace Manager                           11.2.0.1.0                     VALID
  CATALOG              Oracle Database Catalog Views                      11.2.0.1.0                     VALID
  CATPROC              Oracle Database Packages and Types                 11.2.0.1.0                     VALID
  JAVAVM               JServer JAVA Virtual Machine                       11.2.0.1.0                     VALID
  XML                  Oracle XDK                                         11.2.0.1.0                     VALID
  CATJAVA              Oracle Database Java Packages                      11.2.0.1.0                     VALID
  APS                  OLAP Analytic Workspace                            11.2.0.1.0                     VALID
  XOQ                  Oracle OLAP API                                    11.2.0.1.0                     VALID
  18 rows selected.
  --查看补丁情况
sys@ORCL>select ACTION_TIME, ACTION, COMMENTS from sys.DBA_REGISTRY_HISTORY;  no rows selected
  --查看无效对象
sys@ORCL>select count(*) from dba_objects where status'VALID';  COUNT(*)
  ----------
  123
sys@ORCL> select object_name,object_type,owner,status from dba_objects where  status'VALID';
sys@ORCL>spool off  2)备份数据库
  这里对全库进行备份,以防打补丁出现意外,可以从备份集中恢复数据。
  先关闭监听器,关闭数据库实例,将其启到mount状态,然后用rman进行冷备。
  3)备份Oracle软件
  把Oracle软件打包备份
  4)安装Opatch
  代码如下:
  --首先,查看当前的OPatch版本
[oracle@data ~]$ opatch version  Invoking OPatch 11.1.0.6.6
  OPatch Version: 11.1.0.6.6
  OPatch succeeded.
  --如果当前的Opatch版本不够,下载最新的Opatch,覆盖原来的opatch即可
[oracle@data psu_jul_2011]$ unzip p6880880_112000_Linux-x86-64.zip  --unzip之后,在当前文件夹下出现OPatch文件夹
[oracle@data psu_jul_2011]$ mv $ORACLE_HOME/OPatch $ORACLE_HOME/OPatch_20130705  
[oracle@data psu_jul_2011]$ cp -r ./OPatch $ORACLE_HOME
  
[oracle@data psu_jul_2011]$ opatch version
  OPatch Version: 11.2.0.3.4
  OPatch succeeded.
  5)安装补丁(Oracle软件部分)
  首先,通过opatch lsinventory 查看之前打过的补丁信息。
  然后解压缩补丁文件:
[oracle@data psu_jul_2011]$ unzip p12419378_112010_Linux-x86-64.zip  
[oracle@data psu_jul_2011]$ cd 12419378
  最后在补丁的主目录下执行opatch apply,等待5~10分钟即可(注意:一定要先完全关闭数据库和监听器)
[oracle@data 12419378]$ pwd  /home/oracle/psu_jul_2011/12419378
[oracle@data 12419378]$ opatch apply  如果最后有warnings一般都没什么问题,只要不是error就好。
  6)安装补丁(数据库部分)
  这步比较简单,就是跑catbundle脚本,但时间比较长,10分钟左右(视机器性能而定)
cd $ORACLE_HOME/rdbms/admin  
sqlplus /nolog
SQL> CONNECT / AS SYSDBA  
SQL> STARTUP
  
SQL> @catbundle.sql psu apply
  
SQL> QUIT
  7)重新编译CPU相关视图 (如果是PSU可略过次步骤)
  该步骤在一个数据库上永远只需要执行一次,是为了完成在2008年1月份第一次发布CPU补丁时的后续工作,如果在安装以前的PSU或者CPU时执行过这个步骤那么就可以无需再次执行,另外,即使不执行该步骤,数据库也是正常运行的,只不过意味着2008年1月份的 CPU补丁没有正常结束安装。
SQL> SELECT * FROM registry$history where ID = '6452863';  上面这条语句用于判断是否已经执行过,如果有行数返回,说明已经执行过,可跳过该步骤;
  如果没有行数返回,则可根据以下步骤重新编译CPU/PSU相关视图:
  cd $ORACLE_HOME/cpu/view_recompile
sqlplus /nologSQL> CONNECT / AS SYSDBA  
SQL> @recompile_precheck_jan2008cpu.sql
  
SQL> SHUTDOWN IMMEDIATE
  
SQL> STARTUP UPGRADE
  
SQL> @view_recompile_jan2008cpu.sql
  
SQL> SHUTDOWN;
  
SQL> STARTUP;
  
SQL> QUIT
  8)事后检查
  该步骤可以和第1)步的事先检查对照
  先编译无效对象:
cd $ORACLE_HOME/rdbms/admin  
sqlplus /nolog
SQL> CONNECT / AS SYSDBA  
SQL> @utlrp.sql
  
SQL> QUIT
  转自:
  http://www.iyunv.net/article/39717.htm



运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.iyunv.com/thread-566022-1-1.html 上篇帖子: oracle vote disk和ocr disk备份与恢复 下篇帖子: oracle的快照和基线
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表