Upload
doanngoc
View
240
Download
2
Embed Size (px)
Citation preview
Copyright©2016,Oracleand/oritsaffiliates.Allrightsreserved.|
OracleDatabasePatchingDOAGRegionaltreffenBremen,26.01.2017
Dr.NorbertLeiendeckerPrincipalSalesConsultantPublicSectorArchitectsforCloud&IT-Technologies
Copyright©2016,Oracleand/oritsaffiliates.Allrightsreserved.|
OraclePatcharten–Welcheristderrichtige?
3
SPUCPU BP DBBP QFSDPPSU PSR
„Würdestdumirbittesagen,wieichvonhierausweitergehensoll?“„DashängtzumgroßenTeildavonab,wohindumöchtest“,sagtedieKatzeLewisCarroll,„AliceimWunderland“
Copyright©2016,Oracleand/oritsaffiliates.Allrightsreserved.|
GuterStartpunktzumentlanghangeln...• MOS-Note1962125.1 OverviewofDatabasePatchDeliveryMethods
4
Copyright©2016,Oracleand/oritsaffiliates.Allrightsreserved.|
Begriffserläuterungen–TestartenvonPatches• FunktionaleTests– TesteinesspeziellenBereichs(FeatureoderTeilbereicheinesFeatures)– RegressionTest=>Ergebnis/VerhalteneinerOperationentsprichtdenErwartungen?
• StressTests– LasttestsbisandieGrenzenderRessourcen
• PerformanceTests– VerschiedeneWorkloadsundFeatures– PerformancemessungspeziellerOperationen(„Atomics“Tests)–GesamtperformancespeziellerWorkloads/Features
5
Copyright©2016,Oracleand/oritsaffiliates.Allrightsreserved.|
Begriffserläuterungen-VersionsNummern
Term VersionNumber Example
MajorRelease First2digitsoftheversion 11.2
BaseRelease First4digitsofaMajorRelease 11.2.0.1
PatchSetRelease(PSR) 4thdigitoftheversion 11.2.0.4
PatchSetUpdate(PSU) 5thdigitofaversion 11.2.0.4.160419
BundlePatch(BP) 5thdigitofaversion+texttoindicatewhichseriesofbundle
ExadataDatabaseBundlePatch11.2.0.4.160419
SecurityPatchUpdate(SPU) Designatedbyamonth/year 11.2.0.4Jan2015SPU
6
Copyright©2016,Oracleand/oritsaffiliates.Allrightsreserved.| 7
ReaktivProaktiv• InterimPatches(historisch“One-Off”)– Spez.Form“DiagnosticPatch”
• FürKombinationaus“Defekt+Version+Plattform”
• durchlaufeneinfacheQS-Tests• werdeninnächstesrelevantesPatch-Set-Releaseintegriert– WennDeadlinefürPatch-Setschonerreicht,wirdInterims-PatchinübernächstesPatch-Set-Releaseintegriert
• behebenBugsvongravierenderAuswirkung
• kontrolliertesRisikodurchintensiveQS• Verfügbaraufsupport.oracle.comàTab."Patches&Updates"
GrundlegendePatch-Arten
Copyright©2016,Oracleand/oritsaffiliates.Allrightsreserved.|
ReaktivePatches• SonderformistOnline-bzw.Hot-Patchingfähig– EnthältnureinesharedLibrary
• KanngegenlaufendeRDBMSInstanzinstalliertwerden• opatch apply online –connectString <SID>:<USERNAME>:<PASSWORD>
• PatchOnline-fähig?– README– cd<patchdir>;opatchquery–allonline=>„Patchisanonlinepatch:true“
• MOS-Note761111.1–„RDBMSOnlinePatchingAkaHotPatching“
8
Copyright©2016,Oracleand/oritsaffiliates.Allrightsreserved.|
ProaktivePatches• SecurityPatchUpdate(SPU)• PatchSetUpdate(PSU)• BundlePatch(BP)• DatabaseProactiveBundlePatch(DBBP)• ComboPatch• QuarterlyFullStackDownloadPatch(QFSDP)• AndereproaktivePatches
9
Copyright©2016,Oracleand/oritsaffiliates.Allrightsreserved.| 10
ProactiveBundlePatch(DBBP)
QuarterlyFullStackDownloadPatch(QFSDP)
BundlePatch(BP)
PatchSetUpdate(PSU)
SecurityPatchUpdate(SPU)
StandardKonfigurationen EngineeredSystems
ProaktivePatches
Copyright©2016,Oracleand/oritsaffiliates.Allrightsreserved.|
Sonderfall„ProaktivePatches“–PSRbzw.Patchset• PatchSetRelease-PSR
11
Copyright©2016,Oracleand/oritsaffiliates.Allrightsreserved.|
Sonderfall„ProaktivePatches“-PSR• PatchSetRelease–PSR• „PatchSet“irreführend,daFullRelease!• Überotn.oracle.comnormalerweisenurDownloaddesBasis-Releases– Z.B.11.2.0.1viaOTN,11.2.0.4nurüberMOS
• Out-of-Place=>InstallationinneuesOracleHome• In-placesupported,abernichtempfohlen• GIUpgradesimmerOut-of-Place
12
Copyright©2016,Oracleand/oritsaffiliates.Allrightsreserved.|
SecurityPatchUpdate-SPU• SammlungvonSecurity-Fixes(ehemalsCriticalPatchUpdates=CPUs)• Rhythmus:vierteljährlich• StetsRACRollingund„StandbyFirst“installierbar
DatabaseSPUslaufenmit12caus=>Ab12.1.0.1Security-FixesinBundlePatchoderPSUintegriert
13
Copyright©2016,Oracleand/oritsaffiliates.Allrightsreserved.|
...UnddochwiederCPU??
14
Copyright©2016,Oracleand/oritsaffiliates.Allrightsreserved.|
RACRollingundStandbyFirst
15
• Wasbedeutet„RACRolling“?– EinKnotennachdemanderenwirdgepatcht–Mindestens1Knotenimmeraktiv– KeinkompletterCluster-Shutdown–Ggf.dennochDowntimedurchauszuführendeSkripteinder/denDatenbanken
• Wasbedeutet„StandbyFirst“?
Copyright©2016,Oracleand/oritsaffiliates.Allrightsreserved.|
DataGuardStandby-FirstPatchApply① BinaryInstallationaufderStandby-Seite
① ShutdownderStandby-Instanz② BinaryInstallation③ RestartStandby④ RestartMediaRecovery
② TestenderStandby① KonvertierenzuSnapshotStandby② Ggf.fürdasPatchennotwendigeSQLsausführen③ Testen④ KonvertierenzurückzurPhysicalStandby
③ Patchingabschließen(Primary-Seite)① ShutdownderPrimary② BinaryInstallation③ StartupPrimary④ Ggf.fürdasPatchennotwendigeSQLsausführen
16
OraclePatchAssurance-DataGuardStandby-FirstPatchApply(DocID1265700.1)
UnterschiedlicheDatabaseHomesmaximal31Tage!
Copyright©2016,Oracleand/oritsaffiliates.Allrightsreserved.|
PatchSetUpdate–PSU 1/2• SammlungvonFixesfürkritischeBugs
• InklusiveSecurity-Fixes• EnthältkeineÄnderungendesOptimizers
• EnthältkeineÄnderungen,dieApplikationenbeeinflussen• KannmehrereKomponentendesStacksbeinhalten(z.B.GIPSU=GI+DB)
• Rhythmus:vierteljährlich(Dienstag,der17.Jan/Apr/Jul/Oktamnächstenliegt)– http://www.oracle.com/technetwork/topics/security/alerts-086861.html-CriticalPatchUpdates
• kumulativ
• DBPSUundGIPSUstetsRACRollingund„StandbyFirst“installierbar• OJVMPSUwederRACRollingnoch„StandbyFirst“installierbar
17
Copyright©2016,Oracleand/oritsaffiliates.Allrightsreserved.|
PatchSetUpdate–PSU 2/2• InklusiveSecurity-Fixes– „OraclewillissueSecurityAlertsforvulnerabilityfixesdeemedtoocriticaltowaitfordistributioninthenextCriticalPatch
Update.“
– AutomatischeBenachrichtigungüberSecurityAlertskannabonniertwerden– Anleitung:http://www.oracle.com/technetwork/topics/security/securityemail-090378.html
18
Copyright©2016,Oracleand/oritsaffiliates.Allrightsreserved.|
BundlePatch-BP• SammlungvonFixesfürBugseinesFeatures,ProduktsoderKonfiguration– z.B.WindowsDatabaseBundlePatch,DatabasePatchforExadata,DatabaseProactiveBundlePatch(DBBP)
• ObermengevonPSU• KannmehrereKomponentendesStacksbeinhalten– z.B.DatabasePatchforExadata=>FixesfürDatenbankundGridInfrastruktur
• Rhythmus:vierteljährlich• StetsRACRollingund„StandbyFirst“installierbar• SeitApril2016:„DatabasePatchforEngineeredSystems“und„DatabaseIn-Memory“umbenanntin„DatabaseProactiveBundlePatch“
19
Copyright©2016,Oracleand/oritsaffiliates.Allrightsreserved.|
AndereProactivePatches• FürsehrspezielleEinsatzzwecke• AußerhalbdesnormalenSPU/PSU/BPZyklus• Z.B.Time-ZonePatchesalle6Monate• Typischerweiseals„InterimPatch“
20
Copyright©2016,Oracleand/oritsaffiliates.Allrightsreserved.|
Note1454618.1 QuickReferencetoPatchNumbersforDatabasePSU,SPU(CPU),BundlePatchesandPatchsets
21
Copyright©2016,Oracleand/oritsaffiliates.Allrightsreserved.|
Note756671.1 OracleRecommendedPatches–OracleDatabase
22
Copyright©2016,Oracleand/oritsaffiliates.Allrightsreserved.|
Note1389167.1–GetProactivewithOracleDatabase
23
Copyright©2016,Oracleand/oritsaffiliates.Allrightsreserved.|
Beispiele
24
Copyright©2016,Oracleand/oritsaffiliates.Allrightsreserved.| 25
„opatchlspatches“zeigtnichtdieseNummer,sonderndiese
goofy*emrep-/u01/app/oracle/product/12102/dbhome_1/OPatch>./opatch lspatches24846605;OCW Interim patch for 2484660524340679;DATABASE BUNDLE PATCH: 12.1.0.2.161018 (24340679)21555660;Database PSU 12.1.0.2.5, Oracle JavaVM Component (Oct2015)
DBBP
Copyright©2016,Oracleand/oritsaffiliates.Allrightsreserved.| 26
PSU
Copyright©2016,Oracleand/oritsaffiliates.Allrightsreserved.| 27
PSU
ol6rac1*+ASM1-/home/oracle>opatchlspatches23727148;24007012;ACFSPatchSetUpdate:12.1.0.2.161018(24007012)24006101;DatabasePatchSetUpdate:12.1.0.2.161018(24006101)23854735;OCWPatchSetUpdate:12.1.0.2.161018(23854735)21436941;WLMPatchSetUpdate:12.1.0.2.5(21436941)
OPatchsucceeded.
Copyright©2016,Oracleand/oritsaffiliates.Allrightsreserved.|
QuarterlyFullStackDownloadPatch–QFSDP
• Sammlungvonverschiedenen,konfliktfreienPatchesin„einemPatch“• Z.B.„QFSDPforSuperCluster“enthält:–QuarterlyDatabasePatchforExadata–OJVMPSU–WeitereSuperClusterSystemPatches(SCMU,Firmware,Treiberusw.)
• WirdauchvonPlatinumServicesgenutzt
28
Copyright©2016,Oracleand/oritsaffiliates.Allrightsreserved.|
QuarterlyFullStackDownloadPatch-QFSDP
• PlatinumCertificationinExachk–MOS-Note1968952.1– System„PlatinumReady“Check
• CertifiedPlatinumConfigs!– http://www.oracle.com/us/support/library/certified-platinum-configs-1652888.pdf
• NichtmehralszweiQFSDPsauslassen!• KeinproaktiverHinweisdurchPlatinum-Support!
29
...Youwillberesponsible(i)forcontactingOracletoscheduletheremotepatchinstallationand(ii)forapprovinganypatchtobeinstalled....
Quelle:http://www.oracle.com/us/support/library/platinum-services-policies-1652886.pdf
Copyright©2016,Oracleand/oritsaffiliates.Allrightsreserved.|
QuarterlyFullStackDownloadPatch-QFSDP
30
Copyright©2016,Oracleand/oritsaffiliates.Allrightsreserved.|
SonderfallOracleJavaVMComponentDatabasePSU(OJVM)• OracleJavaVirtualMachine• JavaCodedirektinderDatenbankausführen• Multimedia,Spatial,OLAP,XDK,CDC,...erfordernOJVM–Defaultmäßiginstalliert
• WederRACRollingnoch„StandbyFirst“installierbar– „MitigationPatch“alsNotpflaster=>PatchtnurdenSecurity-Anteil
• OJVMnurfürDB/DB-Homerelevant• JDBCauchfürClient-Only,InstantClientundGridInfrastructureHomes
31
Copyright©2016,Oracleand/oritsaffiliates.Allrightsreserved.|
ComboPatches• KombinationausOJVMPSUund–DBBP–GIPSU–DBPSU
32
Copyright©2016,Oracleand/oritsaffiliates.Allrightsreserved.|
opatchautoundopatch• OpatchUser‘sGuideinEMCC12cR5-Doku– http://docs.oracle.com/cd/E24628_01/doc.121/e39376/toc.htm
• MasterNoteForOpatch(DocID293369.1)• opatch:Java-basiertesToolzumPatchen/Rollback• opatchauto:PatchOrchestrationTool;nutztselbstwieder„opatch“– Pre-patchchecks– Patchapply– Start/Stoprunningservers– Post-patchchecks– Rollbackpatches,fallsDeinstallationerforderlich
33
Copyright©2016,Oracleand/oritsaffiliates.Allrightsreserved.|
opatchautoundopatch• opatchauto,fallsGI+RACgepatchtwird– Beispiel:DBBPoderGIPSU(enthältGI-undDB-Patches)– opatchautoapply–generatesteps=>Waswürdeopatchautoallesausführen?
• opatch,fallsnurDB-Homegepatchtwird– Beispiel:DBPSU
• „Rolling“Upgradesowohlmitopatchauto,alsauchmitopatch• Opatch-Version≥12.2.0.1.5bzw.≥11.2.0.3.14–UnabhängigvonOCM=>keinocm-ResponseFilemehrnotwendig
34
Copyright©2016,Oracleand/oritsaffiliates.Allrightsreserved.|
Beispiel:„Rolling“UpgradeDBPSU• 1.MöglichkeitmitGIPSU12.1.0.2161018(Patch24412235):– opatchautoapply/<patchdir>/24412235–oh<DBOracleHomepath>– PatchteinenKnotennachdemanderen,beimletztendannnoch„datapatch“
• 2.MöglichkeitmitDBPSU12.1.0.2.161018(Patch24006101):– cd/<patchdir>/24006101;opatchapply– PatchteinenKnotennachdemanderen,aberShutdown/StartupDB-InstanzproKnotenmanuellundexpliziter„datapatch“-AufrufamEnde.
35
Copyright©2016,Oracleand/oritsaffiliates.Allrightsreserved.|
BeispielGI+RAC:opatchautoapply
36
StoptheDatabase
Step1PatchRACHome
Directory
Step2StopandUnlocktheGIStack
Step3
PatchGIHomeDirectory
Step4ChangeOwner/
PermissionsbacktoPrepatchStatus
Step5StarttheDatabase
Step6
ForeachRACHome:Run prepatch.shPatch the RAC HomeRun postpatch.sh
Run:rootadd_rdbms.sh
LockandStarttheGIStack
Run:rootcrs.pl - postpatch
Run:rootcrs.pl -prepatch
Copyright©2016,Oracleand/oritsaffiliates.Allrightsreserved.| 37
[root@goofy~]#opatchautoapply/stage/24968615=>DatabaseProactiveBundlePatch12.1.0.2.170117
OPatchautosessionisinitiatedatTueJan2410:29:582017
ExecutingOPatchprereqoperationstoverifypatchapplicabilityonhome/u01/app/oracle/product/12102/dbhome_1Patchapplicablityverifiedsuccessfullyonhome/u01/app/oracle/product/12102/dbhome_1
Verifyingpatchinventoryonhome/u01/app/oracle/product/12102/dbhome_1Patchinventoryverifiedsuccessfullyonhome/u01/app/oracle/product/12102/dbhome_1
Preparingtobringdowndatabaseserviceonhome/u01/app/oracle/product/12102/dbhome_1Successfullypreparedhome/u01/app/oracle/product/12102/dbhome_1tobringdowndatabaseservice
Bringingdowndatabaseserviceonhome/u01/app/oracle/product/12102/dbhome_1Followingdatabasehasbeenstoppedandwillberestartedlaterduringthesession:dwh01Databaseservicesuccessfullybroughtdownonhome/u01/app/oracle/product/12102/dbhome_1
BringingdownCRSserviceonhome/u01/app/oracle/product/12102/gridPrepatchoperationlogfilelocation:/u01/app/oracle/product/12102/grid/cfgtoollogs/crsconfig/hapatch_2017-01-24_10-31-42AM.logCRSservicebroughtdownsuccessfullyonhome/u01/app/oracle/product/12102/grid
Startapplyingbinarypatchonhome/u01/app/oracle/product/12102/dbhome_1Binarypatchappliedsuccessfullyonhome/u01/app/oracle/product/12102/dbhome_1
Startapplyingbinarypatchonhome/u01/app/oracle/product/12102/gridBinarypatchappliedsuccessfullyonhome/u01/app/oracle/product/12102/grid
StartingCRSserviceonhome/u01/app/oracle/product/12102/gridPostpatchoperationlogfilelocation:/u01/app/oracle/product/12102/grid/cfgtoollogs/crsconfig/hapatch_2017-01-24_10-37-00AM.logCRSservicestartedsuccessfullyonhome/u01/app/oracle/product/12102/grid
Startingdatabaseserviceonhome/u01/app/oracle/product/12102/dbhome_1Databaseservicesuccessfullystartedonhome/u01/app/oracle/product/12102/dbhome_1
TryingtoapplySQLpatchonhome/u01/app/oracle/product/12102/dbhome_1[WARNING]Thedatabaseinstance'emrep'from'/u01/app/oracle/product/12102/dbhome_1',inhost'goofy'isnotrunning.SQLchanges,ifany,willnotbeapplied.Toapply.theSQLchanges,bringupthedatabaseinstanceandrunthecommandmanuallyfromanyonenode(runasoracle).Refertothereadmetogetthecorrectstepsforapplyingthesqlchanges.
Verify
DBundCRSê
ApplyDBundGI-Home
DBundCRSé
DBdatapatch
BeispielDBBPJan2017GI+SI-DB(Auszug)
Copyright©2016,Oracleand/oritsaffiliates.Allrightsreserved.| 38
„oplan“-UtilityBeispiel:DBBP12.1.0.2.170117oplangenerateApplySteps<patchdir>
Copyright©2016,Oracleand/oritsaffiliates.Allrightsreserved.|
PatchDownload
39
Copyright©2016,Oracleand/oritsaffiliates.Allrightsreserved.|
PatchDownload
40
wget.sh
Copyright©2016,Oracleand/oritsaffiliates.Allrightsreserved.|
Empfehlungen• Grundsätzlich:EntwederPSUoderDBBP.Kein„Mischen“möglich.• MindestensPSUsinstallieren– NurminimalesTestenerforderlich
• Ab12.1.0.2:DatabaseProactiveBundlePatch(DBBP)– UmfassendereAnzahlvonFixesalsPSUs– GründlicheresTestenerforderlich
• OJVMPSUinbeidenFällenzusätzlichinstallieren– aberggf.erstspäterwegenDowntime
41
Copyright©2016,Oracleand/oritsaffiliates.Allrightsreserved.|
Patchmethodeändern• NachUpgradeaufneuesPatchSetRelease=>4.StellederVersion• Beispiel:12.1.0.1mitDBPSU=>Upgrade=>12.1.0.2=>DBBPoder• FullyRollback/DeinstallDBPSU=>InstallierenaktuellesDBBP• KeineMischungBP-undPSU-MethodefüreinOracle_Home!• FallsDBBPverwendet,keinweiteresPatchingmitPSUmöglich– BeiDBBP-Methodebleibenoder–DBBPkomplettrückgängigmachenundPSUsanwenden
42
Copyright©2016,Oracleand/oritsaffiliates.Allrightsreserved.|
Empfehlungen• Aktuelles„opatch“-Utilityverwenden– Patch6880880(passendesReleaseundPlattformauswählen)
• READMEzumjeweiligenPatchlesen(auch„Knownissues“)• opatchprereqCheckConflictAmongPatchesWithDetail–phBaseDir<patchdir>
• opatchprereqCheckConflictAgainstOHWithDetail–phBaseDir<patchdir>
• Möglichstaktuellbleiben• Patchingggf.vorabinclonedORACLE_HOMEtesten– UngepatchtesORACLE_HOMEals„Gold“-Image.– Duplizierendes„Gold“-Images(cpio,tar,...)– Duplikatbekanntmachen:
$perl$ORACLE_HOME/clone/bin/clone.plORACLE_BASE=...ORACLE_HOME=...ORACLE_HOME_NAME=...– http://docs.oracle.com/database/122/LADBI/cloning-an-oracle-home.htm-LADBI-GUID-494E59C3-C381-4A35-8ABE-F6E5DBF29032
43
Copyright©2016,Oracleand/oritsaffiliates.Allrightsreserved.| 44