• oracle 打补丁


    补丁说明

    Oracle数据库补丁一般分为两种,CPU和PSU。

    • CPU
    1. CPU的全称是Critical Patch Update,Oracle对于其产品每个季度发行一次安全补丁包,通常是为了修复产品中的安全隐患。CPU
    2. 是累积的,即最新的CPU补丁已经包含以往的CPU补丁,所以只要安装最新的CPU补丁即可。
    • PSU
    1. PSU全称是Patch Set Update,Oracle对于其产品每个季度发行一次的补丁包,包含了bug的修复。Oracle选取被用户下载数量多,且被验证过具有较低风险的补丁放入到每个季度的PSU中。在每个PSU中不但包含bug的修复而且还包含了最新的CPU。PSU通常随
    2. CPU一起发布。PSU通常也是增量的,大部分可以直接安装,但有些PSU则必须安装了上一个版本的PSU之后才能继续安装,要仔细查看各个PSU的Readme文档。

    补丁文件

    • OPatch:p6880880_112000_Linux-x86-64.zip
    • Database PSU:p31537677_112040_Linux-x86-64.zip

    安装步骤

    1. 下载补丁及OPatch工具;
    2. 上传补丁相关文件到服务器;
    3. 停止所有数据库服务、业务系统;
    4. 备份Oracle软件(备份ORACLE_HOME目录),生产环境已有数据的,建议做一次数据全备;
    5. 替换原来的OPatch工具;
    6. 安装补丁;(根据补丁说明文档进行安装,一般先在测试环境安装,没问题之后再安装到生产)
    7. 检查补丁安装情况;
    8. 启动数据库服务;
    9. 测试应用。

    备份Oracle软件

    在应用补丁集或补丁之前,一般都建议备份ORACLE_HOME二进制文件以及Central Inventory(oraInventory)文件。备份必须由Oracle安装用户或root用户进行,以确保正确保留文件的所有权/权限。在备份之前,一般建议关闭数据库服务、监听器以及所有数据库进程,确保Oracle Home软件冷备顺利进行。

    1. 1. 进入ORACLE_HOME所在目录:
    2. [yaya@yaya ~]$ cd $ORACLE_HOME
    3. [yaya@yaya db_1]$ pwd
    4. /opt/app/oracle/product/11.2.0/db_1
    5. [yaya@yaya db_1]$ cd ..
    6. [yaya@yaya 11.2.0]$
    7. 2. 备份ORACLE_HOME:
    8. [yaya@yaya 11.2.0]$ tar -pcvf /opt/app/oracle/backup/db_1_bak.tar db_1
    9. 3. 备份Central Inventory也应该是备份计划的一部分,并与Oracle_Home备份同时进行,以保持一致性。
    10. 4. 一般在/var/opt/oracle/oraInst.loc 或 /etc/oraInst.loc文件中可以查看Central Inventory的位置:
    11. [yaya@yaya etc]$ cat oraInst.loc
    12. inventory_loc=/opt/app/oracle/inventory
    13. inst_group=oinstall

    OPatch安装

    查看当期OPatch工具版本:

    opatch version

    上传 使用root用户

    OPatch:p6880880_112000_Linux-x86-64.zip
    Database PSU:p31537677_112040_Linux-x86-64.zip

    1. unzip p6880880_112000_Linux-x86-64.zip
    2. chown -R oracle:oinstall OPatch
    3. 备份
    4. cd /oracle/u01/app/oracle/product/11/dbhome_1
    5. mv OPatch/ OPatchBak/
    6. mv /oracle/u01/app/OPatch/ ./


    PSU补丁安装

    1. unzip p31537677_112040_Linux-x86-64.zip
    2. chown -R oracle:oinstall 31537677

    检查补丁兼容性:

    1. cd 31537677
    2. opatch prereq CheckConflictAgainstOHWithDetail -ph ./

    安装补丁(Oracle Home):

    1. 创建交互文件
    2. $ORACLE_HOME/OPatch/ocm/bin/emocmrsp  -no_banner -output /oracle/u01/app/oracle/file.rsp
    3. $ORACLE_HOME/OPatch/opatch apply -silent -ocmrf /oracle/u01/app/oracle/file.rsp
    4. cd $ORACLE_HOME/rdbms/admin
    5. sqlplus / as sysdba
    6. startup
    7. @catbundle.sql psu apply

    检查补丁安装情况:

    1. set line 150
    2. set pagesize 99
    3. col action_time for a30
    4. col action for a30
    5. col comments for a90
    6. col object_name for a30
    7. col object_type for a30
    8. col comp_name for a50
    9. col comp_id for a20
    10. 1. 查看实例信息及状态:
    11. select instance_name,status from v$instance;
    12. 2. 查看数据库版本:
    13. select * from v$version;
    14. 3. 查看数据库大小:
    15. select sum(bytes)/1024/1024||'M' from dba_segments;
    16. 4. 查看组件信息:
    17. select COMP_ID,COMP_NAME,VERSION,STATUS from DBA_REGISTRY;
    18. 5. 查看补丁情况:
    19. select ACTION_TIME, ACTION, COMMENTS from DBA_REGISTRY_HISTORY;
    20. 6. 查看无效对象:
    21. select owner,object_name,object_type,status from dba_objects where status<>'VALID';
    22. select count(*) from dba_objects where status<>'VALID';

  • 相关阅读:
    运维排查-使用hcache插件排查Buffer/cache占用过高
    【零基础SRC】成为漏洞赏金猎人的第一课:加入玲珑安全漏洞挖掘班。
    java毕业设计发电站mybatis+源码+调试部署+系统+数据库+lw
    分布式事务解决方案之【Hmily实现TCC事务】
    微信小程序--》Vant组件库的安装与使用
    Java 数据结构总结
    E9000服务器更改初始密码
    C#.Net筑基-集合知识全解
    【Python程序设计】基于Flask的音乐在线网站/系统/平台
    程序员换新电脑资料准备
  • 原文地址:https://blog.csdn.net/u011334954/article/details/126727365