完整记录一则Oracle 11.2.0.4单实例打PSU补丁的过程

本文详述了一次Oracle 11.2.0.4数据库打PSU补丁的全程,包括OPatch升级、应用19121551补丁、数据库打补丁步骤及验证补丁成功的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

本文记录了打PSU的全过程,意在体会数据库打PSU补丁的整个过程。

1.OPatch替换为最新版本
2.数据库软件应用19121551补丁程序
3.数据库应用补丁
4.验证PSU补丁是否应用成功

1.OPatch替换为最新版本

[oracle@DB usr2]$ id
uid=500(oracle) gid=500(oinstall) 组=500(oinstall),501(dba) 环境=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023
[oracle@DB usr2]$ cd /opt/app/oracle/product/11.2.0/dbhome_1/OPatch/
[oracle@DB OPatch]$ ls
crs  docs  emdpatch.pl  jlib  ocm  opatch  opatch.bat  opatchdiag  opatchdiag.bat  opatch.ini  opatch.pl  opatchprereqs  oplan        
[oracle@DB OPatch]$ ./opatch version
OPatch Version: 11.2.0.3.4

OPatch succeeded.
[oracle@DB OPatch]$ cd ..
[oracle@DB dbhome_1]$ mv OPatch/ OPatch_bak
[oracle@DB dbhome_1]$ unzip /usr2/p6880880_112000_Linux-x86-64.zip 
Archive:  /usr2/p6880880_112000_Linux-x86-64.zip
   creating: OPatch/
   creating: OPatch/jlib/
  inflating: OPatch/jlib/oracle.opatch.classpath.jar  
  inflating: OPatch/jlib/oracle.opatch.classpath.windows.jar  
  inflating: OPatch/jlib/opatch.jar  
   creating: OPatch/jlib/fa/
  inflating: OPatch/jlib/fa/oracle.opatch.fa.classpath.windows.jar  
  inflating: OPatch/jlib/fa/oracle.opatch.fa.classpath.unix.jar  
  inflating: OPatch/jlib/fa/oracle.opatch.fa.classpath.jar  
  inflating: OPatch/jlib/opatchsdk.jar  
  inflating: OPatch/jlib/oracle.opatch.classpath.unix.jar  
   creating: OPatch/oplan/
  inflating: OPatch/oplan/oplan.bat  
   creating: OPatch/oplan/jlib/
  inflating: OPatch/oplan/jlib/oplan.jar  
  inflating: OPatch/oplan/jlib/osysmodel-utils.jar  
  inflating: OPatch/oplan/jlib/patchsdk.jar  
  inflating: OPatch/oplan/jlib/JMXDrivers.jar  
  inflating: OPatch/oplan/jlib/Validation.jar  
  inflating: OPatch/oplan/jlib/bundle.jar  
  inflating: OPatch/oplan/jlib/oracle.oplan.classpath.jar  
  inflating: OPatch/oplan/jlib/OuiDriver.jar  
  inflating: OPatch/oplan/jlib/automation.jar  
   creating: OPatch/oplan/jlib/jaxb/
  inflating: OPatch/oplan/jlib/jaxb/jaxb-impl.jar  
  inflating: OPatch/oplan/jlib/jaxb/activation.jar  
  inflating: OPatch/oplan/jlib/jaxb/jaxb-api.jar  
  inflating: OPatch/oplan/jlib/jaxb/jsr173_1.0_api.jar  
  inflating: OPatch/oplan/jlib/EMrepoDrivers.jar  
  inflating: OPatch/oplan/jlib/CRSProductDriver.jar  
  inflating: OPatch/oplan/jlib/ValidationRules.jar  
   creating: OPatch/oplan/jlib/apache-commons/
  inflating: OPatch/oplan/jlib/apache-commons/commons-cli-1.0.jar  
  inflating: OPatch/oplan/jlib/OsysModel.jar  
  inflating: OPatch/oplan/oplan      
  inflating: OPatch/oplan/README.txt  
  inflating: OPatch/oplan/README.html  
   creating: OPatch/opatchprereqs/
  inflating: OPatch/opatchprereqs/prerequisite.properties  
   creating: OPatch/opatchprereqs/opatch/
  inflating: OPatch/opatchprereqs/opatch/opatch_prereq.xml  
  inflating: OPatch/opatchprereqs/opatch/runtime_prereq.xml  
  inflating: OPatch/opatchprereqs/opatch/rulemap.xml  
   creating: OPatch/opatchprereqs/oui/
  inflating: OPatch/opatchprereqs/oui/knowledgesrc.xml  
  inflating: OPatch/emdpatch.pl      
  inflating: OPatch/opatch.pl        
  inflating: OPatch/opatch           
  inflating: OPatch/opatch.bat       
  inflating: OPatch/README.txt       
   creating: OPatch/docs/
  inflating: OPatch/docs/Prereq_Users_Guide.txt  
  inflating: OPatch/docs/Users_Guide.txt  
  inflating: OPatch/docs/FAQ         
   creating: OPatch/crs/
  inflating: OPatch/crs/patch11203.pl  
   creating: OPatch/crs/log/
  inflating: OPatch/crs/patch11202.pl  
  inflating: OPatch/crs/auto_patch.pl  
  inflating: OPatch/crs/patch112.pl  
  inflating: OPatch/crs/installPatch.excl  
  inflating: OPatch/opatchdiag.bat   
   creating: OPatch/ocm/
  inflating: OPatch/ocm/ocm_platforms.txt  
 extracting: OPatch/ocm/ocm.zip      
   creating: OPatch/ocm/lib/
  inflating: OPatch/ocm/lib/emocmclnt.jar  
  inflating: OPatch/ocm/lib/emocmclnt-14.jar  
  inflating: OPatch/ocm/lib/http_client.jar  
  inflating: OPatch/ocm/lib/osdt_jce.jar  
  inflating: OPatch/ocm/lib/jnet.jar  
  inflating: OPatch/ocm/lib/emocmcommon.jar  
  inflating: OPatch/ocm/lib/xmlparserv2.jar  
  inflating: OPatch/ocm/lib/log4j-core.jar  
  inflating: OPatch/ocm/lib/jcert.jar  
  inflating: OPatch/ocm/lib/jsse.jar  
  inflating: OPatch/ocm/lib/osdt_core3.jar  
  inflating: OPatch/ocm/lib/regexp.jar  
   creating: OPatch/ocm/bin/
  inflating: OPatch/ocm/bin/emocmrsp  
 extracting: OPatch/version.txt      
  inflating: OPatch/opatch.ini       
  inflating: OPatch/opatchdiag       
[oracle@DB dbhome_1]$ ls
apex        cfgtoollogs  css     deinstall    EMStage  instantclient  jdev  log      nls     OPatch_bak   oui    precomp   scheduler     srvm             uix
assistants  clone        ctx     demo         has      inventory      jdk   md       oc4j    opmn         owb    racg      slax          suptools         usm
bin         config       cv      diagnostics  hs       j2ee           jlib  mesg     odbc    oracore      owm    rdbms     sqldeveloper  sysman           utl
ccr         crs          dbs     dv           ide      javavm         ldap  mgw      olap    oraInst.loc  perl   relnotes  sqlj          timingframework  wwg
cdata       csmig        dc_ocm  emcli        install  jdbc           lib   network  OPatch  ord          plsql  root.sh   sqlplus       ucp              xdk
[oracle@DB dbhome_1]$ cd OPatch
[oracle@DB OPatch]$ ./opatch version
OPatch Version: 11.2.0.3.6

OPatch succeeded.

2.数据库软件应用19121551补丁程序

[oracle@DB usr2]$ cd /opt
[oracle@DB opt]$ cd app
[oracle@DB app]$ ls
oracle  oraInventory
[oracle@DB app]$ mkdir patch
[oracle@DB app]$ ls
oracle  oraInventory  patch
[oracle@DB app]$ cd patch/
[oracle@DB patch]$ ls
[oracle@DB patch]$ unzip /usr2/p19121551_112040_Linux-x86-64.zip 
Archive:  /usr2/p19121551_112040_Linux-x86-64.zip
   creating: 19121551/
   creating: 19121551/18031668/
   creating: 19121551/18031668/files/
   creating: 19121551/18031668/files/psu/
   creating: 19121551/18031668/files/psu/11.2.0.4.2/
  inflating: 19121551/18031668/files/psu/11.2.0.4.2/catpsu.sql  
  inflating: 19121551/18031668/files/psu/11.2.0.4.2/catpsu_rollback.sql  
   creating: 19121551/18031668/files/bin/
  inflating: 19121551/18031668/files/bin/diskmon.bin  
   creating: 19121551/18031668/files/lib/
   creating: 19121551/18031668/files/lib/libclient11.a/
  inflating: 19121551/18031668/files/lib/libclient11.a/knxo.o  
   creating: 19121551/18031668/files/lib/libnnz11.a/
  inflating: 19121551/18031668/files/lib/libnnz11.a/ssl_rec_read_readrecord.o  
   creating: 19121551/18031668/files/lib/libcommon11.a/
  inflating: 19121551/18031668/files/lib/libcommon11.a/sageindex.o  
  inflating: 19121551/18031668/files/lib/libcommon11.a/sagetxn.o  
  inflating: 19121551/18031668/files/lib/libcommon11.a/kaf4.o  
  inflating: 19121551/18031668/files/lib/libcommon11.a/sagedata.o  
  inflating: 19121551/18031668/files/lib/libcommon11.a/fplibtest.o  
  inflating: 19121551/18031668/files/lib/libcommon11.a/sagecache.o  
  inflating: 19121551/18031668/files/lib/libnnz11.so  
   creating: 19121551/18031668/files/lib/libcell11.a/
  inflating: 19121551/18031668/files/lib/libcell11.a/osslib.o  
  inflating: 19121551/18031668/files/lib/libcell11.a/sosstcp.o  
   creating: 19121551/18031668/files/lib/libserver11.a/
  inflating: 19121551/18031668/files/lib/libserver11.a/knlc.o  
  inflating: 19121551/18031668/files/lib/libserver11.a/kzd.o  
  inflating: 19121551/18031668/files/lib/libserver11.a/knlogc.o  
  inflating: 19121551/18031668/files/lib/libserver11.a/kdil.o  
  inflating: 19121551/18031668/files/lib/libserver11.a/knal.o  
  inflating: 19121551/18031668/files/lib/libserver11.a/xty.o  
  inflating: 19121551/18031668/files/lib/libserver11.a/ktsp.o  
  inflating: 19121551/18031668/files/lib/libserver11.a/kkt.o  
  inflating: 19121551/18031668/files/lib/libserver11.a/ktfb.o  
  inflating: 19121551/18031668/files/lib/libserver11.a/krsm.o  
  inflating: 19121551/18031668/files/lib/libserver11.a/kdx.o  
  inflating: 19121551/18031668/files/lib/libserver11.a/rfrdb.o  
  inflating: 19121551/18031668/files/lib/libserver11.a/knl.o  
  inflating: 19121551/18031668/files/lib/libserver11.a/krvxb.o  
  inflating: 19121551/18031668/files/lib/libserver11.a/krse.o  
  inflating: 19121551/18031668/files/lib/libserver11.a/kcl.o  
  inflating: 19121551/18031668/files/lib/libserver11.a/knip.o  
  inflating: 19121551/18031668/files/lib/libserver11.a/atb.o  
  inflating: 19121551/18031668/files/lib/libserver11.a/knlcsx.o  
  inflating: 19121551/18031668/files/lib/libserver11.a/kdbl.o  
  inflating: 19121551/18031668/files/lib/libserver11.a/kjbm.o  
  inflating: 19121551/18031668/files/lib/libserver11.a/knlcsv.o  
  inflating: 19121551/18031668/files/lib/libserver11.a/knanr.o  
  inflating: 19121551/18031668/files/lib/libserver11.a/kcrfr.o  
  inflating: 19121551/18031668/files/lib/libserver11.a/krr.o  
  inflating: 19121551/18031668/files/lib/libserver11.a/kcvs.o  
  inflating: 19121551/18031668/files/lib/libserver11.a/krf.o  
  inflating: 19121551/18031668/files/lib/libserver11.a/kni.o  
  inflating: 19121551/18031668/files/lib/libserver11.a/kntg.o  
  inflating: 19121551/18031668/files/lib/libserver11.a/kxdrs.o  
  inflating: 19121551/18031668/files/lib/libserver11.a/knalse.o  
  inflating: 19121551/18031668/files/lib/libserver11.a/kcfis.o  
  inflating: 19121551/18031668/files/lib/libserver11.a/kfdp.o  
  inflating: 19121551/18031668/files/lib/libserver11.a/knac.o  
  inflating: 19121551/18031668/files/lib/libserver11.a/rfrld.o  
  inflating: 19121551/18031668/files/lib/libserver11.a/kcbr.o  
  inflating: 19121551/18031668/files/lib/libserver11.a/kjr.o  
  inflating: 19121551/18031668/files/lib/libserver11.a/kpolob.o  
  inflating: 19121551/18031668/files/lib/libserver11.a/knasp.o  
  inflating: 19121551/18031668/files/lib/libserver11.a/kzp.o  
  inflating: 19121551/18031668/files/lib/libserver11.a/krsk.o  
  inflating: 19121551/18031668/files/lib/libserver11.a/ktel.o  
  inflating: 19121551/18031668/files/lib/libserver11.a/ksfd.o  
  inflating: 19121551/18031668/files/lib/libserver11.a/knals.o  
  inflating: 19121551/18031668/files/lib/libserver11.a/kcbz.o  
  inflating: 19121551/18031668/files/lib/libserver11.a/knalf.o  
  inflating: 19121551/18031668/files/lib/libserver11.a/kxdam.o  
  inflating: 19121551/18031668/files/lib/libserver11.a/kfg.o  
  inflating: 19121551/18031668/files/lib/libserver11.a/kcb.o  
  inflating: 19121551/18031668/files/lib/libserver11.a/rfrpd.o  
  inflating: 19121551/18031668/files/lib/libserver11.a/knalsp.o  
  inflating: 19121551/18031668/files/lib/libserver11.a/knas.o  
  inflating: 19121551/18031668/files/lib/libserver11.a/kkdl.o  
  inflating: 19121551/18031668/files/lib/libserver11.a/knasx.o  
  inflating: 19121551/18031668/files/lib/libserver11.a/msqimb.o  
  inflating: 19121551/18031668/files/lib/libserver11.a/krst.o  
  inflating: 19121551/18031668/files/lib/libserver11.a/krd.o  
  inflating: 19121551/18031668/files/lib/libserver11.a/kfd.o  
   creating: 19121551/18031668/files/lib/libpls11_pic.a/
  inflating: 19121551/18031668/files/lib/libpls11_pic.a/pkv_pic.o  
   creating: 19121551/18031668/files/lib/libgeneric11.a/
  inflating: 19121551/18031668/files/lib/libgeneric11.a/qci.o  
  inflating: 19121551/18031668/files/lib/libgeneric11.a/kgl.o  
  inflating: 19121551/18031668/files/lib/libgeneric11.a/kopt.o  
   creating: 19121551/18031668/files/lib/libpls11.a/
  inflating: 19121551/18031668/files/lib/libpls11.a/pkv.o  
  inflating: 19121551/18031668/files/lib/libasmclntsh11.so  
   creating: 19121551/18031668/files/lib/libasmclntsh11.a/
  inflating: 19121551/18031668/files/lib/libasmclntsh11.a/kfgp.o  
  inflating: 19121551/18031668/files/lib/libasmclntsh11.a/kgfm.o  
  inflating: 19121551/18031668/files/lib/libcell11.so  
   creating: 19121551/18031668/files/lib/libasmclnt11.a/
  inflating: 19121551/18031668/files/lib/libasmclnt11.a/kfgp.o  
  inflating: 19121551/18031668/files/lib/libasmclnt11.a/kgfm.o  
   creating: 19121551/18031668/files/rdbms/
   creating: 19121551/18031668/files/rdbms/lib/
  inflating: 19121551/18031668/files/rdbms/lib/diskmon.o  
   creating: 19121551/18031668/files/rdbms/lib/libperfsrv11.a/
  inflating: 19121551/18031668/files/rdbms/lib/libperfsrv11.a/kaf4_PERF.o  
  inflating: 19121551/18031668/files/rdbms/lib/orion.o  
   creating: 19121551/18031668/files/rdbms/admin/
  inflating: 19121551/18031668/files/rdbms/admin/spawrio.sql  
  inflating: 19121551/18031668/files/rdbms/admin/prvtdadv.plb  
  inflating: 19121551/18031668/files/rdbms/admin/bundledata_PSU.xml  
  inflating: 19121551/18031668/files/rdbms/admin/prvtadv.plb  
   creating: 19121551/18031668/etc/
   creating: 19121551/18031668/etc/config/
  inflating: 19121551/18031668/etc/config/inventory.xml  
  inflating: 19121551/18031668/etc/config/actions.xml  
  inflating: 19121551/18031668/etc/config/deploy.xml  
   creating: 19121551/18031668/etc/xml/
  inflating: 19121551/18031668/etc/xml/GenericActions.xml  
  inflating: 19121551/18031668/etc/xml/ShiphomeDirectoryStructure.xml  
 extracting: 19121551/README.txt     
   creating: 19121551/19121551/
   creating: 19121551/19121551/files/
   creating: 19121551/19121551/files/psu/
   creating: 19121551/19121551/files/psu/11.2.0.4.4/
  inflating: 19121551/19121551/files/psu/11.2.0.4.4/catpsu.sql  
  inflating: 19121551/19121551/files/psu/11.2.0.4.4/catpsu_rollback.sql  
   creating: 19121551/19121551/files/lib/
   creating: 19121551/19121551/files/lib/libcommon11.a/
  inflating: 19121551/19121551/files/lib/libcommon11.a/k2u.o  
  inflating: 19121551/19121551/files/lib/libcommon11.a/kpccap.o  
  inflating: 19121551/19121551/files/lib/libcommon11.a/ktsg.o  
  inflating: 19121551/19121551/files/lib/libcommon11.a/k2m.o  
  inflating: 19121551/19121551/files/lib/libcommon11.a/kll.o  
   creating: 19121551/19121551/files/lib/libserver11.a/
  inflating: 19121551/19121551/files/lib/libserver11.a/krbb.o  
  inflating: 19121551/19121551/files/lib/libserver11.a/qesma.o  
  inflating: 19121551/19121551/files/lib/libserver11.a/opivsn.o  
  inflating: 19121551/19121551/files/lib/libserver11.a/kjfm.o  
  inflating: 19121551/19121551/files/lib/libserver11.a/xty.o  
  inflating: 19121551/19121551/files/lib/libserver11.a/kjbr.o  
  inflating: 19121551/19121551/files/lib/libserver11.a/kkt.o  
  inflating: 19121551/19121551/files/lib/libserver11.a/krsh.o  
  inflating: 19121551/19121551/files/lib/libserver11.a/kjx.o  
  inflating: 19121551/19121551/files/lib/libserver11.a/kjfc.o  
  inflating: 19121551/19121551/files/lib/libserver11.a/kks.o  
  inflating: 19121551/19121551/files/lib/libserver11.a/kzax.o  
  inflating: 19121551/19121551/files/lib/libserver11.a/ksp.o  
  inflating: 19121551/19121551/files/lib/libserver11.a/kjbl.o  
  inflating: 19121551/19121551/files/lib/libserver11.a/krsv.o  
  inflating: 19121551/19121551/files/lib/libserver11.a/kkzl.o  
  inflating: 19121551/19121551/files/lib/libserver11.a/kks1.o  
  inflating: 19121551/19121551/files/lib/libserver11.a/kcl.o  
  inflating: 19121551/19121551/files/lib/libserver11.a/kewr.o  
  inflating: 19121551/19121551/files/lib/libserver11.a/kjb.o  
  inflating: 19121551/19121551/files/lib/libserver11.a/atb.o  
  inflating: 19121551/19121551/files/lib/libserver11.a/qerus.o  
  inflating: 19121551/19121551/files/lib/libserver11.a/kjcts.o  
  inflating: 19121551/19121551/files/lib/libserver11.a/ktu.o  
  inflating: 19121551/19121551/files/lib/libserver11.a/kdd.o  
  inflating: 19121551/19121551/files/lib/libserver11.a/kjbm.o  
  inflating: 19121551/19121551/files/lib/libserver11.a/kxib.o  
  inflating: 19121551/19121551/files/lib/libserver11.a/qesmboim.o  
  inflating: 19121551/19121551/files/lib/libserver11.a/kjbdom.o  
  inflating: 19121551/19121551/files/lib/libserver11.a/psdpgi.o  
  inflating: 19121551/19121551/files/lib/libserver11.a/kcbl.o  
  inflating: 19121551/19121551/files/lib/libserver11.a/kcbt.o  
  inflating: 19121551/19121551/files/lib/libserver11.a/kjm.o  
  inflating: 19121551/19121551/files/lib/libserver11.a/kkscs.o  
  inflating: 19121551/19121551/files/lib/libserver11.a/dmqx.o  
  inflating: 19121551/19121551/files/lib/libserver11.a/updexe.o  
  inflating: 19121551/19121551/files/lib/libserver11.a/qesmm.o  
  inflating: 19121551/19121551/files/lib/libserver11.a/kcbr.o  
  inflating: 19121551/19121551/files/lib/libserver11.a/ktb.o  
  inflating: 19121551/19121551/files/lib/libserver11.a/kkpam.o  
  inflating: 19121551/19121551/files/lib/libserver11.a/kjfs.o  
  inflating: 19121551/19121551/files/lib/libserver11.a/kpospf.o  
  inflating: 19121551/19121551/files/lib/libserver11.a/kjctc.o  
  inflating: 19121551/19121551/files/lib/libserver11.a/kdu.o  
  inflating: 19121551/19121551/files/lib/libserver11.a/kjs.o  
  inflating: 19121551/19121551/files/lib/libserver11.a/kju.o  
  inflating: 19121551/19121551/files/lib/libserver11.a/kjdd.o  
  inflating: 19121551/19121551/files/lib/libserver11.a/kjfz.o  
  inflating: 19121551/19121551/files/lib/libserver11.a/kjdx.o  
  inflating: 19121551/19121551/files/lib/libserver11.a/kcb.o  
  inflating: 19121551/19121551/files/lib/libserver11.a/kwqic.o  
  inflating: 19121551/19121551/files/lib/libserver11.a/qespc.o  
  inflating: 19121551/19121551/files/lib/libserver11.a/kjp.o  
  inflating: 19121551/19121551/files/lib/libserver11.a/qerup.o  
  inflating: 19121551/19121551/files/lib/libserver11.a/kji.o  
  inflating: 19121551/19121551/files/lib/libserver11.a/kxs.o  
  inflating: 19121551/19121551/files/lib/libserver11.a/opipls.o  
  inflating: 19121551/19121551/files/lib/libserver11.a/kjdr.o  
  inflating: 19121551/19121551/files/lib/libserver11.a/kjcs.o  
   creating: 19121551/19121551/files/lib/libgeneric11.a/
  inflating: 19121551/19121551/files/lib/libgeneric11.a/qmx0.o  
  inflating: 19121551/19121551/files/lib/libgeneric11.a/qci.o  
  inflating: 19121551/19121551/files/lib/libgeneric11.a/kgl.o  
  inflating: 19121551/19121551/files/lib/libgeneric11.a/qcdo.o  
  inflating: 19121551/19121551/files/lib/libgeneric11.a/kgnfs.o  
  inflating: 19121551/19121551/files/lib/libgeneric11.a/qcso.o  
  inflating: 19121551/19121551/files/lib/libgeneric11.a/kgh.o  
  inflating: 19121551/19121551/files/lib/libgeneric11.a/kgl2.o  
  inflating: 19121551/19121551/files/lib/libgeneric11.a/kgbt.o  
   creating: 19121551/19121551/files/ord/
   creating: 19121551/19121551/files/ord/jlib/
  inflating: 19121551/19121551/files/ord/jlib/ordim.jar  
  inflating: 19121551/19121551/files/ord/jlib/ordimimg.jar  
   creating: 19121551/19121551/files/sysman/
   creating: 19121551/19121551/files/sysman/jlib/
   creating: 19121551/19121551/files/sysman/jlib/emDB.jar/
   creating: 19121551/19121551/files/sysman/jlib/emDB.jar/oracle/
   creating: 19121551/19121551/files/sysman/jlib/emDB.jar/oracle/sysman/
   creating: 19121551/19121551/files/sysman/jlib/emDB.jar/oracle/sysman/db/
   creating: 19121551/19121551/files/sysman/jlib/emDB.jar/oracle/sysman/db/rsc/
   creating: 19121551/19121551/files/sysman/jlib/emDB.jar/oracle/sysman/db/rsc/inst/
  inflating: 19121551/19121551/files/sysman/jlib/emDB.jar/oracle/sysman/db/rsc/inst/DBMsgID.class  
  inflating: 19121551/19121551/files/sysman/jlib/emDB.jar/oracle/sysman/db/rsc/inst/DBMsg.class  
   creating: 19121551/19121551/files/sysman/jlib/emDB.jar/oracle/sysman/db/adm/
   creating: 19121551/19121551/files/sysman/jlib/emDB.jar/oracle/sysman/db/adm/util/
  inflating: 19121551/19121551/files/sysman/jlib/emDB.jar/oracle/sysman/db/adm/util/BeanUtils.class  
   creating: 19121551/19121551/files/sysman/jlib/emDB.jar/oracle/sysman/emo/
   creating: 19121551/19121551/files/sysman/jlib/emDB.jar/oracle/sysman/emo/adm/
  inflating: 19121551/19121551/files/sysman/jlib/emDB.jar/oracle/sysman/emo/adm/DBObjectSQLGenerator.class  
   creating: 19121551/19121551/files/sysman/jlib/emDB.jar/oracle/sysman/emo/adm/instance/
   creating: 19121551/19121551/files/sysman/jlib/emDB.jar/oracle/sysman/emo/adm/instance/scheduler/
  inflating: 19121551/19121551/files/sysman/jlib/emDB.jar/oracle/sysman/emo/adm/instance/scheduler/ChainRulesSQLGenerator.class  
  inflating: 19121551/19121551/files/sysman/jlib/emDB.jar/oracle/sysman/emo/adm/instance/scheduler/WindowSQLGenerator.class  
  inflating: 19121551/19121551/files/sysman/jlib/emDB.jar/oracle/sysman/emo/adm/instance/scheduler/ChainSQLGenerator.class  
  inflating: 19121551/19121551/files/sysman/jlib/emDB.jar/oracle/sysman/emo/adm/instance/scheduler/WindowGroupSQLGenerator.class  
  inflating: 19121551/19121551/files/sysman/jlib/emDB.jar/oracle/sysman/emo/adm/instance/scheduler/JobSQLGenerator.class  
  inflating: 19121551/19121551/files/sysman/jlib/emDB.jar/oracle/sysman/emo/adm/instance/scheduler/ChainStepsSQLGenerator.class  
  inflating: 19121551/19121551/files/sysman/jlib/emDB.jar/oracle/sysman/emo/adm/instance/scheduler/Job.class  
  inflating: 19121551/19121551/files/sysman/jlib/emDB.jar/oracle/sysman/emo/adm/instance/scheduler/ClassSQLGenerator.class  
  inflating: 19121551/19121551/files/sysman/jlib/emDB.jar/oracle/sysman/emo/adm/instance/scheduler/ScheduleSQLGenerator.class  
  inflating: 19121551/19121551/files/sysman/jlib/emDB.jar/oracle/sysman/emo/adm/instance/scheduler/ProgramSQLGenerator.class  
   creating: 19121551/19121551/files/sysman/jlib/emDB.jar/oracle/sysman/emo/adm/instance/baseline/
  inflating: 19121551/19121551/files/sysman/jlib/emDB.jar/oracle/sysman/emo/adm/instance/baseline/BaselineSQLGenerator.class  
   creating: 19121551/19121551/files/rdbms/
   creating: 19121551/19121551/files/rdbms/lib/
  inflating: 19121551/19121551/files/rdbms/lib/jox.o  
   creating: 19121551/19121551/files/rdbms/lib/libknlopt.a/
  inflating: 19121551/19121551/files/rdbms/lib/libknlopt.a/jox.o  
   creating: 19121551/19121551/files/rdbms/lib/libdbtools11.a/
  inflating: 19121551/19121551/files/rdbms/lib/libdbtools11.a/krmb.o  
  inflating: 19121551/19121551/files/rdbms/lib/libdbtools11.a/krmk4.o  
  inflating: 19121551/19121551/files/rdbms/lib/libdbtools11.a/krmk3.o  
  inflating: 19121551/19121551/files/rdbms/lib/ins_rdbms.mk  
   creating: 19121551/19121551/files/rdbms/mesg/
  inflating: 19121551/19121551/files/rdbms/mesg/oraus.msb  
  inflating: 19121551/19121551/files/rdbms/mesg/oraus.msg  
   creating: 19121551/19121551/files/rdbms/admin/
 extracting: 19121551/19121551/files/rdbms/admin/kspauv14.var  
  inflating: 19121551/19121551/files/rdbms/admin/prvtpckl.plb  
  inflating: 19121551/19121551/files/rdbms/admin/c1102000.sql  
  inflating: 19121551/19121551/files/rdbms/admin/catbundle.sql  
  inflating: 19121551/19121551/files/rdbms/admin/bundledata_PSU.xml  
   creating: 19121551/19121551/etc/
   creating: 19121551/19121551/etc/config/
  inflating: 19121551/19121551/etc/config/inventory.xml  
  inflating: 19121551/19121551/etc/config/composite.xml  
  inflating: 19121551/19121551/etc/config/actions.xml  
  inflating: 19121551/19121551/etc/config/deploy.xml  
   creating: 19121551/19121551/etc/xml/
  inflating: 19121551/19121551/etc/xml/GenericActions.xml  
  inflating: 19121551/19121551/etc/xml/ShiphomeDirectoryStructure.xml  
   creating: 19121551/17478514/
   creating: 19121551/17478514/files/
   creating: 19121551/17478514/files/psu/
   creating: 19121551/17478514/files/psu/11.2.0.4.1/
  inflating: 19121551/17478514/files/psu/11.2.0.4.1/catpsu.sql  
  inflating: 19121551/17478514/files/psu/11.2.0.4.1/catpsu_rollback.sql  
   creating: 19121551/17478514/files/bin/
  inflating: 19121551/17478514/files/bin/xsl  
  inflating: 19121551/17478514/files/bin/xmlcg  
  inflating: 19121551/17478514/files/bin/xvm  
  inflating: 19121551/17478514/files/bin/lxinst  
   creating: 19121551/17478514/files/lib/
   creating: 19121551/17478514/files/lib/libclient11.a/
  inflating: 19121551/17478514/files/lib/libclient11.a/knoggcap.o  
   creating: 19121551/17478514/files/lib/libxml11.a/
  inflating: 19121551/17478514/files/lib/libxml11.a/lpxm.o  
  inflating: 19121551/17478514/files/lib/libxml11.a/lpxfsm.o  
   creating: 19121551/17478514/files/lib/libserver11.a/
  inflating: 19121551/17478514/files/lib/libserver11.a/kjbr.o  
  inflating: 19121551/17478514/files/lib/libserver11.a/kqlf.o  
  inflating: 19121551/17478514/files/lib/libserver11.a/kjx.o  
  inflating: 19121551/17478514/files/lib/libserver11.a/kjbl.o  
  inflating: 19121551/17478514/files/lib/libserver11.a/kkss.o  
  inflating: 19121551/17478514/files/lib/libserver11.a/kjb.o  
  inflating: 19121551/17478514/files/lib/libserver11.a/ksfdss.o  
  inflating: 19121551/17478514/files/lib/libserver11.a/kjbm.o  
  inflating: 19121551/17478514/files/lib/libserver11.a/qkajoi.o  
  inflating: 19121551/17478514/files/lib/libserver11.a/kcfis.o  
  inflating: 19121551/17478514/files/lib/libserver11.a/kf.o  
  inflating: 19121551/17478514/files/lib/libserver11.a/kfds.o  
  inflating: 19121551/17478514/files/lib/libserver11.a/kjs.o  
  inflating: 19121551/17478514/files/lib/libserver11.a/kju.o  
  inflating: 19121551/17478514/files/lib/libserver11.a/ksfd.o  
  inflating: 19121551/17478514/files/lib/libserver11.a/kjdx.o  
  inflating: 19121551/17478514/files/lib/libserver11.a/kjdr.o  
  inflating: 19121551/17478514/files/lib/libserver11.a/kff.o  
  inflating: 19121551/17478514/files/lib/libserver11.a/kfd.o  
  inflating: 19121551/17478514/files/lib/libserver11.a/xct.o  
   creating: 19121551/17478514/files/lib/libpls11_pic.a/
  inflating: 19121551/17478514/files/lib/libpls11_pic.a/pevmexe_pic.o  
   creating: 19121551/17478514/files/lib/libgeneric11.a/
  inflating: 19121551/17478514/files/lib/libgeneric11.a/qcs.o  
  inflating: 19121551/17478514/files/lib/libgeneric11.a/qcd.o  
   creating: 19121551/17478514/files/lib/libpls11.a/
  inflating: 19121551/17478514/files/lib/libpls11.a/pevmexe.o  
   creating: 19121551/17478514/files/md/
   creating: 19121551/17478514/files/md/admin/
  inflating: 19121551/17478514/files/md/admin/catmd10i.sql  
  inflating: 19121551/17478514/files/md/admin/sdodbmig.sql  
  inflating: 19121551/17478514/files/md/admin/sdopatch.sql  
   creating: 19121551/17478514/files/patch/
   creating: 19121551/17478514/files/patch/scripts/
  inflating: 19121551/17478514/files/patch/scripts/bug17088068.sql  
   creating: 19121551/17478514/files/rdbms/
   creating: 19121551/17478514/files/rdbms/admin/
  inflating: 19121551/17478514/files/rdbms/admin/catbundle.sql  
  inflating: 19121551/17478514/files/rdbms/admin/utlu112x.sql  
  inflating: 19121551/17478514/files/rdbms/admin/bundledata_PSU.xml  
  inflating: 19121551/17478514/files/rdbms/admin/utlu112i.sql  
   creating: 19121551/17478514/etc/
   creating: 19121551/17478514/etc/config/
  inflating: 19121551/17478514/etc/config/inventory.xml  
  inflating: 19121551/17478514/etc/config/actions.xml  
  inflating: 19121551/17478514/etc/config/deploy.xml  
   creating: 19121551/17478514/etc/xml/
  inflating: 19121551/17478514/etc/xml/GenericActions.xml  
  inflating: 19121551/17478514/etc/xml/ShiphomeDirectoryStructure.xml  
  inflating: 19121551/README.html    
   creating: 19121551/18522509/
   creating: 19121551/18522509/files/
   creating: 19121551/18522509/files/psu/
   creating: 19121551/18522509/files/psu/11.2.0.4.3/
  inflating: 19121551/18522509/files/psu/11.2.0.4.3/catpsu.sql  
  inflating: 19121551/18522509/files/psu/11.2.0.4.3/catpsu_rollback.sql  
   creating: 19121551/18522509/files/lib/
  inflating: 19121551/18522509/files/lib/asmcmdsys.pm  
  inflating: 19121551/18522509/files/lib/asmcmdambr.pm  
   creating: 19121551/18522509/files/lib/libserver11.a/
  inflating: 19121551/18522509/files/lib/libserver11.a/jskr.o  
  inflating: 19121551/18522509/files/lib/libserver11.a/xpl.o  
  inflating: 19121551/18522509/files/lib/libserver11.a/kzekm.o  
  inflating: 19121551/18522509/files/lib/libserver11.a/jscr.o  
  inflating: 19121551/18522509/files/lib/libserver11.a/kkdo.o  
  inflating: 19121551/18522509/files/lib/libserver11.a/kdlf.o  
  inflating: 19121551/18522509/files/lib/libserver11.a/xty.o  
  inflating: 19121551/18522509/files/lib/libserver11.a/qermt.o  
  inflating: 19121551/18522509/files/lib/libserver11.a/ktsp.o  
  inflating: 19121551/18522509/files/lib/libserver11.a/kkdc.o  
  inflating: 19121551/18522509/files/lib/libserver11.a/kkt.o  
  inflating: 19121551/18522509/files/lib/libserver11.a/ktfb.o  
  inflating: 19121551/18522509/files/lib/libserver11.a/ktspsrch.o  
  inflating: 19121551/18522509/files/lib/libserver11.a/qermd.o  
  inflating: 19121551/18522509/files/lib/libserver11.a/kks.o  
  inflating: 19121551/18522509/files/lib/libserver11.a/knahs.o  
  inflating: 19121551/18522509/files/lib/libserver11.a/knipc.o  
  inflating: 19121551/18522509/files/lib/libserver11.a/kds.o  
  inflating: 19121551/18522509/files/lib/libserver11.a/krvxb.o  
  inflating: 19121551/
### 数据处理方法及技术指南 PAW3395 是一种高性能光学传感器,广泛应用于鼠标和其他输入设备中,用于检测运动和位置。该传感器通过 SPI 接口与主控芯片通信,并提供高精度的位移数据。以下是 PAW3395 的数据处理方法及技术指南。 #### 1. 初始化与配置 在使用 PAW3395 之前,需要对其进行初始化和配置。通常通过 SPI 接口发送命令来设置传感器的工作模式、分辨率、采样率等参数。以下是一个基本的初始化流程: ```c // 初始化 PAW3395 传感器 void paw3395_init() { // 发送复位命令 spi_write(PAW3395_RESET_CMD); delay_ms(10); // 等待复位完成 // 设置分辨率(DPI) spi_write(PAW3395_SET_DPI_CMD); spi_write(0x03); // 设置为 800 DPI // 设置采样率 spi_write(PAW3395_SET_SAMPLE_RATE_CMD); spi_write(0x1A); // 设置为 11 ms 采样周期 // 启动传感器 spi_write(PAW3395_START_MEASUREMENT_CMD); } ``` #### 2. 数据读取 PAW3395 提供了多种寄存器来读取位移数据。每次测量后,传感器会将 X 和 Y 方向的位移值存储在相应的寄存器中。可以通过 SPI 接口读取这些数据。 ```c // 读取 PAW3395 的位移数据 void paw3395_read_motion_data(int16_t *x, int16_t *y) { uint8_t data[5]; // 发送读取运动数据的命令 spi_write(PAW3395_READ_MOTION_DATA_CMD); // 读取 5 字节的数据 spi_read(data, 5); // 解析 X 和 Y 方向的位移 *x = (int16_t)((data[1] << 8) | data[2]); *y = (int16_t)((data[3] << 8) | data[4]); } ``` #### 3. 数据滤波与平滑处理 为了提高数据的稳定性和准确性,通常需要对原始的位移数据进行滤波和平滑处理。常见的滤波方法包括移动平均滤波、低通滤波和卡尔曼滤波等。 ```c // 移动平均滤波器 #define FILTER_WINDOW_SIZE 5 int16_t x_buffer[FILTER_WINDOW_SIZE]; int16_t y_buffer[FILTER_WINDOW_SIZE]; uint8_t buffer_index = 0; void apply_moving_average_filter(int16_t raw_x, int16_t raw_y, int16_t *filtered_x, int16_t *filtered_y) { // 存储当前数据到缓冲区 x_buffer[buffer_index] = raw_x; y_buffer[buffer_index] = raw_y; buffer_index = (buffer_index + 1) % FILTER_WINDOW_SIZE; // 计算平均值 int32_t sum_x = 0, sum_y = 0; for (int i = 0; i < FILTER_WINDOW_SIZE; i++) { sum_x += x_buffer[i]; sum_y += y_buffer[i]; } *filtered_x = (int16_t)(sum_x / FILTER_WINDOW_SIZE); *filtered_y = (int16_t)(sum_y / FILTER_WINDOW_SIZE); } ``` #### 4. 数据校准 PAW3395 的位移数据可能会受到传感器安装误差或环境因素的影响。因此,建议在使用前进行校准。校准可以通过在已知表面上移动传感器并记录偏移量来完成。 ```c // 校准 PAW3395 传感器 void paw3395_calibrate(int16_t *offset_x, int16_t *offset_y) { int16_t x, y; int32_t total_x = 0, total_y = 0; // 采集 100 次数据进行校准 for (int i = 0; i < 100; i++) { paw3395_read_motion_data(&x, &y); total_x += x; total_y += y; delay_ms(10); } // 计算平均偏移量 *offset_x = (int16_t)(total_x / 100); *offset_y = (int16_t)(total_y / 100); } ``` #### 5. 数据可视化与调试 为了更好地理解和调试 PAW3395 的数据,可以将位移数据通过串口发送到计算机,并使用图形化工具(如 Python 的 Matplotlib 或 MATLAB)进行可视化。 ```python import serial import matplotlib.pyplot as plt # 打开串口 ser = serial.Serial('COM3', 115200) # 读取并绘制数据 x_data = [] y_data = [] for _ in range(100): line = ser.readline().decode('utf-8').strip() if line: try: x, y = map(int, line.split(',')) x_data.append(x) y_data.append(y) except: continue plt.plot(x_data, y_data) plt.xlabel('X Position') plt.ylabel('Y Position') plt.title('PAW3395 Motion Data') plt.show() ``` #### 6. 高级功能扩展 PAW3395 还支持一些高级功能,例如手势识别和表面检测。这些功能可以通过配置特定的寄存器来启用,并结合额外的算法进行处理。 ```c // 启用手势识别功能 void paw3395_enable_gesture_detection() { // 配置手势识别寄存器 spi_write(PAW3395_GESTURE_CONFIG_REG); spi_write(0x01); // 启用手势识别 // 设置手势识别阈值 spi_write(PAW3395_GESTURE_THRESHOLD_REG); spi_write(0x20); // 设置阈值为 32 } // 检测手势 uint8_t paw3395_check_gesture() { uint8_t gesture; spi_write(PAW3395_READ_GESTURE_CMD); spi_read(&gesture, 1); return gesture; } ``` ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值