WHITEPAPER: PRAKTIJKERVARINGEN ORACLE-DATABASEBEHEER
Praktijkervaringen
Oracle-databasebeheer
SPS Holding B.V. Buitenomweg 17 | 2811 BM | Reeuwijk | The Netherlands | T +31 (0)182 30 22 22 | F +31 (0)182 30 23 23 | E
[email protected] | W www.sps.nl
WHITEPAPER: PRAKTIJKERVARINGEN ORACLE-DATABASEBEHEER
Vanaf de oprichting van SPS in 1994 is het beheer van Oracle-databases een “core competence” en veel organisaties hebben het beheer van Oracledatabase(s) aan SPS uitbesteed. Vele jaren ervaring met het beheer van Oracle-databases staan aan de basis van dit whitepaper, waarin preventieve en correctieve acties worden toegelicht. Hieronder een selectie van negen onderwerpen: • • • • • • • • •
Aanmaken en dimensioneren van een database Performance management Netwerk Beveiligen van data Backup en recovery Licenties Oplossen van foutmeldingen Onbereikbare database Updates en support
AANMAKEN EN DIMENSIONEREN VAN EEN DATABASE SPS installeert en configureert regelmatig nieuwe databases. Uiteraard is de te verwachten omvang van de database een belangrijke parameter, maar daarnaast zijn er infrastructurele en gebruiksvragen waarop antwoorden nodig zijn. Belangrijke infrastructurele vragen zijn: hoe wordt de data gespreid over filesystemen en disks, hoe wordt de toegang tot het SAN geregeld, welk type disks wordt er gebruikt, zijn er naast de database nog andere applicaties aanwezig waarmee rekening gehouden moet worden, wat is de capaciteit van de onderliggende infrastructuur? Het te verwachte dagelijkse gebruik van de database is belangrijk. Denk aan vragen als: hoeveel mutaties vinden er per dag plaats, zijn er alleen zoekacties of worden er grote runs gedraaid met duizenden mutaties per minuut en hoeveel gelijktijdige gebruikers connecteren met de database?
SPS Holding B.V. Buitenomweg 17 | 2811 BM | Reeuwijk | The Netherlands | T +31 (0)182 30 22 22 | F +31 (0)182 30 23 23 | E
[email protected] | W www.sps.nl
WHITEPAPER: PRAKTIJKERVARINGEN ORACLE-DATABASEBEHEER
De Recovery Time Objective (RTO) en Recovery Point Objective (RPO) en overige continuïteitseisen zijn van invloed op de configuratie. In dit verband speelt onder meer de vraag of de database point-in-time restores moet ondersteunen.Verder is het beschikbare back-up window belangrijk en of de fysieke storage de back-updata wel binnen de gestelde eisen kan leveren. Aandachtspunten bij de feitelijk installatie zijn: • Installeer de nieuwste versie, inclusief het uitrollen van de meest recente patches (Het lijkt een zeer voor de hand liggend aandachtpunt, maar de praktijk laat anders zien). • Creëer aparte filesystemen voor Oracle-programmatuur, logfiles en datafiles. • Installeer standaard productiedatabases met archivering, waardoor database updates sinds de laatst uitgevoerde back-up niet verloren gaan. • Houd bij de inrichting van filesystemen voor de Oracle database rekening met toekomstige groei. • Volg de configuratierichtlijnen voor het onderliggende operating systeem. Als dit nagelaten wordt, zal de installatie niet slagen of resulteren in een database die niet aan de verwachtingen voldoet. • Overweeg of productiedatabases op een uitwijksysteem automatisch geactualiseerd moeten worden door het Oracle High Availability System (HAS). • Richt de back-upomgeving in. Dit kan door procedures op de server zelf en met een uitgebreide back-upserver. • Optimaliseer de performance gerelateerde parameters van Oracle en het onderliggende systeem. Gedegen configuratieonderzoek en een goed voorbereide installatie hebben veel invloed op de stabiliteit van de Oracle-database, ook als deze significant groeit.
PERFORMANCEMANAGEMENT Ondanks de sneller wordende IT-infrastructuur en de zelfoptimaliserende performance-eigenschappen van recente Oracle-versies, is performancemanagement nog steeds een kritische succesfactor voor een optimaal presterende database.
SPS Holding B.V. Buitenomweg 17 | 2811 BM | Reeuwijk | The Netherlands | T +31 (0)182 30 22 22 | F +31 (0)182 30 23 23 | E
[email protected] | W www.sps.nl
WHITEPAPER: PRAKTIJKERVARINGEN ORACLE-DATABASEBEHEER
Zoals in het vorige onderwerp al genoemd werd is het essentieel om de Oracle-configuratierichtlijnen te volgen voor het onderliggende operating systeem. Als dit niet wordt gedaan zal dit negatieve impact hebben op de verwerkingssnelheid van de database. Bij een aanzienlijk deel van de klanten draait de Oracle-database op een Unix systeem, een uiterst stabiele combinatie waarbij een levensduur van 5 jaar of meer zeker geen uitzondering is. Performancemanagement wordt belangrijker naar mate een systeem ouder wordt. Bijvoorbeeld omdat door de groei in data en het aantal gebruikers de originele ontwerpuitgangspunten veranderen. In de praktijk zien wij de volgende oorzaken wanneer de performance niet aan de verwachtingen voldoet: • Gedurende kantooruren worden zware batchjobs gedraaid. • De configuratie-instellingen van het operating-systeem en Oracle werken elkaar tegen, vooral memory-parameters zijn hier van belang. AIX, HP/ UX, Linux en Solaris en Windows Server hanteren verschillende memory managementmethodes waarvoor specifieke instellingen noodzakelijk zijn. • Het gebruikte operating-systeem definieert ook default sizings voor resource-gerelateerde parameters. In alle gevallen is aanpassing van deze defaults noodzakelijk, omdat deze niet voldoende zijn voor zwaarder databasegebruik. • Indeling van tablespaces veroorzaakt hotspots als Direct Attached Storage wordt gebruikt. • Indexering in de database is niet optimaal ingericht waardoor onnodig veel data van de disks gelezen wordt door full table scans, dit kan voor enorme performancedegradatie zorgen. • De database is geïnstalleerd zonder dat adequate tuning heeft plaatsgevonden. Op drukke databaseservers zal dit resulteren in slechte performance doordat de resources van de machine onvoldoende benut worden. • De database is geïnstalleerd op een systeem waarop andere applicaties draaien en de resourceprofielen conflicteren. • De omvang van de database ontgroeit de kracht van het systeem qua
SPS Holding B.V. Buitenomweg 17 | 2811 BM | Reeuwijk | The Netherlands | T +31 (0)182 30 22 22 | F +31 (0)182 30 23 23 | E
[email protected] | W www.sps.nl
WHITEPAPER: PRAKTIJKERVARINGEN ORACLE-DATABASEBEHEER
cpu of memory, waardoor hardwareuitbreiding of vervanging moet plaatsvinden.Voldoende geheugen is een absolute voorwaarde voor een stabiele en snelle database. Oracle gebruikt het geheugen onder meer voor gebruikerssessies en caching van data waardoor trage disk I/O voorkomen wordt. • Oracle op een gevirtualiseerde machine kan wisselend performancegedrag vertonen dat moeilijk te verklaren is met de informatie van het systeem zelf.Virtualisatietechnologie zoals VMware biedt grote voordelen voor de beschikbaarheid en reductie van complexiteit. Als besloten wordt een grotere database op een virtuele machine te plaatsen, zorg dan dat er voldoende reserves zijn op de ESX-server en dat alle resourcetoewijzingen dedicated voor de Oracle virtuele machine zijn.
NETWERK Aanpassingen binnen de Oracle-omgeving zijn nodig bij netwerkwijzigingen bij de klant om te voorkomen dat databases niet meer bereikbaar zijn door bijvoorbeeld DNS-wijzigingen of IP-nummeraanpassingen.Vooral bij three tier -configuraties heeft dat invloed op de gehele Oracle-omgeving. Bovendien kan data over verkeerde netwerkinterfaces lopen door wijzigingen van de netwerkinstellingen. Nog afgezien van de mogelijke performanceimpact kan dit leiden tot verdrukking van productienetwerkverkeer op de standaard netwerkinterface. Expertise op de optimalisatie van de netwerkomgeving en het inrichten van de Oracle specifieke netwerk issues (SQL-NET, TNSNAMES enz.) is noodzakelijk.
BEVEILIGEN VAN DATA Beveiligen van data is bij centrale databaseomgevingen van groot belang.Veelal beseft men niet dat (vrijwel) alle bedrijfsgevoelige data centraal beschikbaar en toegankelijk is binnen de centrale omgeving. Het is noodzakelijk om stil te staan bij de bevoegdheden van betrokken (centrale) beheerders. Bij onjuiste beheerrechten binnen de centrale omgeving hebben personen eenvoudig toegang tot bedrijfsgevoelige data
SPS Holding B.V. Buitenomweg 17 | 2811 BM | Reeuwijk | The Netherlands | T +31 (0)182 30 22 22 | F +31 (0)182 30 23 23 | E
[email protected] | W www.sps.nl
WHITEPAPER: PRAKTIJKERVARINGEN ORACLE-DATABASEBEHEER
en het is niet ondenkbaar dat deze naar de eigen USB- of hard disk wordt gekopieerd. Opzetten en toepassen van een wachtwoordbeleid en de implementatie ervan op de Oracle-database zijn regelmatig voorkomende en uiterst noodzakelijke beheeractiviteiten. Het transport van data over het netwerk en de opslagmedia moeten volgens het (centrale) security beleid zijn ingericht. Bijvoorbeeld in een hostingomgeving kan het nodig zijn om de centrale data gecodeerd over het netwerk te transporteren of bij extern tapetransport de data op tapes te versleutelen. Regelmatige audits op bovenstaande punten zijn nodig. Met deze audits kan worden voorkomen dat bedrijfsgevoelige data in verkeerde handen valt.
BACK-UP EN RECOVERY De inrichting van de failover en back-upfaciliteiten voor Oracle is een van de meest voorkomende activiteit van een Oracle beheerteam. Bij databasebackups spelen de volgende zaken een rol: • Doorlooptijd back-up binnen back-upwindow. • Point in time restore mogelijkheid. • Maximaal toelaatbaar transactieverlies als een back-up teruggezet moet worden. (RPO). • Beschikbaarheidseisen (RTO). • Oracle biedt vele back-upmogelijkheden, zowel met eigen tools (RMAN) als met tools van derden zoals CommVault. Bij een zeer hoge beschikbaarheidseis werkt Oracle met zgn. standby databases en natuurlijk met clustering (RAC). Een goede inrichting van de back-up- en recovery-omgeving kan niet zonder gedegen onderzoek waarbij ook de kosten van downtime worden afgezet tegen de kosten van maatregelen om downtime te voorkomen. Van een Oracle-beheerder mag ook worden verwacht dat gedegen kennis van back-up en recoverytools aanwezig is en dat men over procedures beschikt om de activiteiten vlekkeloos te laten verlopen.
SPS Holding B.V. Buitenomweg 17 | 2811 BM | Reeuwijk | The Netherlands | T +31 (0)182 30 22 22 | F +31 (0)182 30 23 23 | E
[email protected] | W www.sps.nl
WHITEPAPER: PRAKTIJKERVARINGEN ORACLE-DATABASEBEHEER
LICENTIES De licentiestructuur van Oracle heeft een groot aantal parameters en randvoorwaarden. Door deskundig advies worden onverwachte kosten achteraf vermeden. Oracle licenties zijn thans gerelateerd aan onder meer de potentiele CPUcapaciteit van het systeem.Voordat een systeem gekozen wordt is het van belang de gevolgen voor de Oracle-licentie te onderzoeken. Als bijvoorbeeld de database op een gevirtualiseerde server geplaatst wordt, kan het zijn dat Oracle de capaciteit van de VMware ESX-server als basis voor licentiekosten neemt en niet de capaciteit van de virtuele machine waarop de database draait.
OPLOSSEN VAN FOUTMELDINGEN Regelmatig voorkomende foutmeldingen zijn ORA-01652, ORA-01555 en ORA-00600. In alle gevallen is het resultaat van deze meldingen dat de transactie, die de melding veroorzaakte, niet succesvol beëindigd wordt. De meldingen ORA-01652 en ORA-01555 worden meestal veroorzaakt door SQL queries die grote hoeveelheden tussenresultaten genereren of dezelfde objecten in de database benaderen. Bij de analyse van deze meldingtypes is de frequentie waarmee ze voorkomen van beland. Soms is het gerechtvaardigd om geen changes uit te voeren als een melding vrijwel niet voorkomt. Verstoringen door resourcegebrek komen regelmatig voor op databases waarbij eindgebruikers zelf SQL statements kunnen samenstellen. Met SQL is het eenvoudig binnen de database resource te korten of deadlocks te veroorzaken waardoor alle gebruikers hinder ondervinden en de applicaties die de database gebruiken in foutsituaties terecht komen. Het is verstandig om directe SQL toegang tot de database te vermijden. Andere meldingen kunnen opgelost worden door het vergroten van interne tablespaces in Oracle zoals bijvoorbeeld redolog of tempdb.
SPS Holding B.V. Buitenomweg 17 | 2811 BM | Reeuwijk | The Netherlands | T +31 (0)182 30 22 22 | F +31 (0)182 30 23 23 | E
[email protected] | W www.sps.nl
WHITEPAPER: PRAKTIJKERVARINGEN ORACLE-DATABASEBEHEER
Foutsituaties veroorzaakt door ruimtegebrek komen zelden voor als de monitoring goed is ingericht, omdat deze alert messages geeft als er ruimtegebrek dreigt. Zo kan tijdig actie ondernomen worden.
ONBEREIKBARE DATABASE Oracle-databasesoftware is van hoge kwaliteit; crashes en “hang”-situaties komen zelden voor. Er zijn wel situaties waardoor de database geen transacties meer kan verwerken of stopt, zoals: • Volgelopen archive log filesysteem.Veel updates genereren een grote hoeveelheid archive logs voor point-in-time restore. Hierdoor kan het filesysteem in enkele minuten vollopen. Wanneer Oracle geen archive logs kan wegschrijven stopt de transactieverwerking totdat er weer ruimte is. • Opdrachten van gebruiker aan de database worden door de “listener” ontvangen en aan de database doorgegeven. Zonder “listener” krijgt de database geen opdrachten en lijkt de database stil te staan. Opnieuw starten van het “listener proces” is dan de oplossing. • Op windows systemen kunnen conflicten ontstaan tussen Oracle en de virusscannersoftware. Het advies is de Oracle databasebestanden niet mee te nemen de virusscan. • Memory tekorten. Elk type operating-systeem reageert anders op de allocatie van geheugen. Als bijvoorbeeld een memory tekort ontstaat door te veel sessies kan het operating-systeem besluiten processen te stoppen (AIX) waardoor een een operating-systeem crash wordt voorkomen. Andere operating-systemen stoppen geen processen bij geheugengebrek, maar worden zo traag dat er in feite een onwerkbare situatie ontstaat.
UPDATES EN SUPPORT Updates zijn voor de Oracle-database net zo belangrijk als voor een windows-systeem. Oracle publiceert elk kwartaal updates voor al haar softwareproducten. Een of twee keer per jaar een database-upgrade uitvoeren is sterk aan te raden om de databaseomgeving niet te laten verouderen en Oracle in staat te stellen om support te verlenen. Het is verstandig om upgrades en updates na een test- en acceptatieronde in productie te nemen.
SPS Holding B.V. Buitenomweg 17 | 2811 BM | Reeuwijk | The Netherlands | T +31 (0)182 30 22 22 | F +31 (0)182 30 23 23 | E
[email protected] | W www.sps.nl
WHITEPAPER: PRAKTIJKERVARINGEN ORACLE-DATABASEBEHEER
Het is geen uitzondering dat Oracle-databases draaien in een volledig verouderde omgeving, waarbij de hele omgeving (hardware, operatingsysteem en de Oracle-versie) meerdere generaties achterloopt.Vaak omdat er geen tijd geserveerd wordt de updates daadwerkelijk uit te rollen. Hoewel leveranciers graag supportcontracten afsluiten, blijkt dat ondersteuning op verouderde versies en systemen minder effectief is dan op nieuwere omgevingen. Het advies is om alles up to date te houden, niet alleen ter bescherming van de investering, maar ook omdat updates gemaakt worden om de betrouwbaarheid en beveiliging van het systeem op orde te houden. Regelmatig zijn of worden applicaties gekocht van leveranciers die niet meegaan met het Oracle-updateschema. Ook kan de ondersteuning op de applicatie vervallen door het aanbrengen van database-updates. Het is belangrijk om hierover goede afspraken te maken met de applicatieleverancier.
SPS EN ORACLE-DATABASEBEHEER Het beheren van Oracle-databases behoort tot de kernactiviteiten van SPS. Voor onze klanten is een probleemloos functionerende Oracle-database een vereisteen men vertrouwt volledig op een correcte werking. SPS biedt Voorspellend Oracle-databasebeheer aan waarbij wij op afstand de Oracle database(s) preventief en proactief beheren. Problemen worden voorkomen en eventuele incidenten worden snel en professioneel opgelost, 24 uur per dag, 7 dagen in de week. Beschikbaarheid, capaciteit en prestaties worden voortdurend bewaakt. De beheerkosten zijn onder controle en de impact van verstoringen is tot een minimum teruggebracht. Voorspellend Oracle-databasebeheer van SPS is de garantie voor een optimaal functionerende Oracle-database.
SPS Holding B.V. Buitenomweg 17 | 2811 BM | Reeuwijk | The Netherlands | T +31 (0)182 30 22 22 | F +31 (0)182 30 23 23 | E
[email protected] | W www.sps.nl