Sikkerhetskopiering og gjenoppretting av Oracle Database-data. Oracle Backup

Sikkerhetskopierings- og gjenopprettingsoperasjoner i Oracle kan deles inn i tre typer:

1. Logisk sikkerhetskopiering - utført ved hjelp av exp-verktøyet inkludert i Oracle, som lar deg eksportere hele databasen, spesifiserte skjemaer eller tabeller. Ved eksport av hele databasen utføres en såkalt full eksport (alle databasetabeller eksporteres) eller inkrementell (tabeller som har endret seg siden siste eksport, lastes ut). For Oracle 10g XE, der databasestørrelsen ikke overstiger 4 GB, kan du bruke full eksport.

2. Fysisk sikkerhetskopiering - utføres etter installasjon av databasen og innebærer kopiering av datafiler, kontrollfiler, operative redo-logger og init.ora-filen med databaseinnstillinger.

3. Online backup - utført i en database som opererer i ARCHIVELOG-modus. Denne modusen arkiverer operasjonelle gjenta-logger og opprettholder en logg over alle transaksjoner.

For små treningsdatabaser er det enkleste og mest pålitelige alternativet en fullstendig logisk sikkerhetskopi og en fysisk sikkerhetskopi. Logisk sikkerhetskopiering utføres ved å bruke exp.exe-verktøyet som ligger i mappen oracleexe\app\oracle\product\10.2.0\server\BIN\. Verktøyet er en konsollapplikasjon som mottar parametere via kommandolinjen. Siden det vanligvis er mange parametere (5-10 stykker), er det praktisk å lage en profil med parametere og deretter sende den til eksportverktøyet ved å bruke parfilparameteren.

La oss se på et eksempel på typiske profiler. Først, la oss løse det vanligste problemet - å lage en sikkerhetskopi av ett eller flere opplegg. Som et eksempel kan du vurdere å kopiere STUDENT-skjemaet med undervisningseksempel. For å gjøre dette, lag en tekstfil exp_stud.prm som inneholder følgende linjer:

USERID = brukernavn/passord
LOG = oralOstud.log FIL = oralOstud.dmp 0WNER= STUDENT

Deretter vil vi eksportere ved å utføre kommandoen exp parfile=exp_stud.prm, som vil lage filen ora10stud.dmp som inneholder en sikkerhetskopi av STUDENT-skjemaet. Denne filen har et binært format og komprimeres veldig godt av enhver arkiver, så for å automatisere sikkerhetskopieringsprosedyren er det praktisk å lage en BAT-fil som inneholder en eksportkommando og et kall til arkiveren for å komprimere den resulterende dumpen.

I vårt tilfelle inneholder USERID-parameteren navnet og passordet for tilgang til databasen, LOG-parameteren spesifiserer navnet på filen som operasjonsloggen er skrevet i, FILE-parameteren spesifiserer navnet på sikkerhetskopifilen, OWNER - en eller flere eksporterte skjemaer (hvis flere skjemaer er spesifisert, er de atskilt med komma).

For å utføre en full eksport, vil profilen endres litt:

USERID = brukernavn/passord
LOG = oralOfull.log FILE = oralOfull.dmp FULL = Y

Et viktig poeng er at eksport av et spesifikt skjema kan utføres på vegne av eieren, men for å gjøre en full eksport må du ha DBA-rollen, ellers vil forsøket på å gjøre en full eksport mislykkes med feilen EXP-00023 med meldingen " Må være en DBA for å eksportere full database eller tabellplass " Dumpstørrelse ved full eksport tom base Oracle 10g XE er 43 MB (9 MB etter WinRar-komprimering). Det anbefales på det sterkeste å utføre periodiske sikkerhetskopier selv på en treningsdatabase - det er dusinvis og hundrevis av tilfeller der databasen i løpet av studiet av Oracle blir skadet, en bruker blir slettet eller en annen operasjon fører til tap av opprettede objekter .

Logisk import er en speiloperasjon som skal eksporteres og utføres ved hjelp av IMP-verktøyet. Under import er det ikke nødvendig å importere all informasjon som er tilgjengelig i dumpen - du kan importere spesifiserte skjemaer eller tabeller. Det er praktisk å plassere parametrene til IMP-verktøyet i profiler; for eksempel, for å importere STUDENT-skjemaet, kan du bruke følgende profil:

BRUKERID = student/student LOGG = oralOstudimp.log FIL = oralOstud.dmp
RADER = Y
TILSKUDD = Y
INDEKS = Y
FR0MUSER= STUDENT
T0USER= STUDENT

FROMUSER-parameteren spesifiserer hvilke kontoer i dumpen informasjonen er hentet fra, og TOUSER-parameteren spesifiserer hvilke kontoer den importeres til. Dette er en veldig praktisk funksjon i importverktøyet fordi det lar deg importere data fra ett skjema til et annet.

Parameterne ROWS (tabellrader), GRANTS (objekttillatelser), INDEXES (indekser) indikerer hvilke typer objekter som importeres.

La oss vurdere flere typiske situasjoner som oppstår i praksis:

du må importere STUDENT-kontoobjektene til STUDENT1-kontoen. I dette tilfellet bør du angi parameterne FROMUSER=STUDENT og TOUSER= STUDENT1;

Før du importerer, må du fjerne alle objekter fra skjemaet, ellers vil importprosessen generere feil IMP-00015 for hver importert tabell (data vil ikke bli importert i dette tilfellet). Hvis det av en eller annen grunn er nødvendig å laste data inn i en eksisterende tabell, kan du bruke parameteren IGNORE=Y. som vil føre til at feil ignoreres når du oppretter objekter og at dataimporten fortsetter. Men hvis du bruker parameteren IGNORE=Y, må du være klar over at i tabeller uten primærnøkkel kan dupliserte poster forekomme (siden hver importoperasjon laster inn nye data, men de gamle blir ikke ødelagt).

IMP har en interessant funksjon - i stedet for å utføre kommandoer i databasen, sender dette verktøyet dem til loggen, og genererer derved skript som inneholder DML-setninger. For å aktivere denne funksjonen må du spesifisere SHOW=Y-parameteren.

Bla bla bla. Du må alltid ta sikkerhetskopier, ellers blir det som på bildet "Han droppet databasen og tok ikke sikkerhetskopier."

Sikkerhetskopiering skal utføres automatisk, iht etablerte regler. Administratoren bør gripe inn hvis noe går galt, og ikke hver gang det er behov for en sikkerhetskopi.

Sikkerhetskopier bør lagres på en annen server, helst ikke i samme lokaler. Hvis dette ikke er mulig, bør det lagres på en annen disk enn der databasefilene er lagret.

Sikkerhetskopiering baser Oracle-data innebærer å lage sikkerhetskopier av datafiler, kontrollfiler og arkiverte loggfiler. I tillegg kan reservesettet inkludere spfile, init.ora, listener.ora og tnsnames.ora

Sikkerhetskopiering utføres:

  • Bruke operativsystemet.
  • Bruke RMAN (Recovery Manager) verktøy.

For sentralisert lagring av sikkerhetskopier av et stort antall databaser, foreslår Oracle å bruke Oracle Catalog – en annen database laget spesielt for sikkerhetskopiering (jeg kan ikke si hva som er lagret i den ennå. Jeg har aldri brukt den). Av en eller annen grunn trodde jeg at det var lagret sikkerhetskopier i den. Men av en eller annen grunn begynte jeg å tvile på det.

I tillegg til sikkerhetskopier kan du eksportere ønsket skjema til en fil. Deretter kan du også importere den om ønskelig. Dette krever ingen andre filer bortsett fra selve dumpfilen.

ARCHIVELOG og NOARCHIVELOG moduser

Oracle registrerer alle endringer som er gjort i datablokker i minnet i online-redo-logger, vanligvis før de skrives til databasefilene. Under gjenopprettingsprosessen bruker Oracle endringene som er registrert i disse loggfilene for å bringe databasen tilbake til det normale. nåværende status. Oracle støtter to moduser for å administrere slike filer.

  • Loggarkiveringsmodus (ARCHIVELOG). I denne modusen lagrer (arkiverer) Oracle fullførte omgjøringslogger. Derfor, uansett hvor lenge siden sikkerhetskopieringen ble utført, hvis ARCHIVELOG-modus brukes, kan databasen alltid gjenopprettes til et hvilket som helst tidspunkt ved hjelp av arkiverte logger.
  • Modus uten arkiveringslogger (NOARCHIVELOG). I denne modusen overskrives fullstendige gjenta-logger i stedet for å lagres. Dette betyr derfor at hvis du bruker NOARCHIVELOG-modus, kan du kun gjenopprette fra sikkerhetskopien og at eventuelle andre endringer som ble gjort i databasen etter at sikkerhetskopieringen ble utført, vil gå tapt. Denne modusen sikrer at gjenoppretting kun kan utføres etter at en databaseforekomst mislykkes. I tilfelle problemer med mediet (for eksempel tap av en disk), kan en database som opererer i NOARCHIVELOG-modus bare gjenopprettes fra en sikkerhetskopi, og selvfølgelig med tap av alle endringer som ble gjort på den etter at opprettelse av denne sikkerhetskopien.

Nesten alle produksjonsdatabaser opererer i ARCHIVELOG-modus. NOARCHIVELOG-modus brukes kun når det er mulig å gjenopprette data fra andre kilder, eller når databasen fortsatt bare er på utviklings- eller teststadiet og derfor ikke trenger muligheten til å gjenopprette dataene sine med liten nøyaktighet.

Sikkerhetskopier hele eller deler av databasen

Du kan sikkerhetskopiere enten hele databasen eller bare deler av den, for eksempel en tabellplass eller datafil inkludert i den. Merk at når databasen kjører i NOARCHIVELOG-modus, kan du ikke utføre en delvis sikkerhetskopiering av databasen, også kjent som en delvis databasesikkerhetskopiering, med mindre alle tabellplassene og filene som sikkerhetskopieres, ikke er skrivebeskyttede. Du kan utføre en fullstendig sikkerhetskopiering av databasen, også kalt en sikkerhetskopi av hele databasen, i enten ARCHIVELOG-modus eller NOARCHIVELOG-modus.

Oftest utføres en full backup. Det innebærer å kopiere ikke bare alle datafiler, men også en viktigere fil - kontrollfilen. Uten en kontrollfil vil ikke Oracle åpne databasen, så for å gjenopprette, i tillegg til å sikkerhetskopiere alle datafiler, må du også ha en fersk sikkerhetskopi av kontrollfilen.

Konsekvente og inkonsekvente sikkerhetskopier

Konsekvent sikkerhetskopiering skaper konsistente sikkerhetskopier og krever ingen gjenopprettingsprosess. Når du bruker en sikkerhetskopi for å gjenopprette en database eller deler av den (for eksempel en tabellplass eller datafil), må du vanligvis først utføre en gjenoppretting av dataene fra sikkerhetskopien (dvs. en RESOTRE-prosedyre), og deretter gjenopprette funksjonaliteten av databasen (dvs. RECOVER-prosedyre). Ved en konsistent sikkerhetskopiering er ingen av disse gjenopprettingstrinnene nødvendige. I tilfelle av en inkonsekvent sikkerhetskopiering er det alltid obligatorisk å utføre disse gjenopprettingstrinnene.

Oracle tildeler hver transaksjon et unikt System Change Number (SCN). Hver fiksering vil for eksempel føre til en økning i dette tallet. Hver gang Oracle sjekker, blir alle endrede data i operasjonsdatafilen skrevet til disken. Og når dette skjer. Oracle oppdaterer trådsjekkpunktet i kontrollfilen. Under denne oppdateringen sikrer Orale at alle lesbare og skrivbare datafiler og kontrollfiler godtar det samme SCN-nummeret. En database anses å være konsistent når SCN-numrene som er lagret i overskriftene til alle datafiler, er identiske og samsvarer med datafilhodeinformasjonen i kontrollfilene. Det viktigste å huske er at det samme SCN-nummeret må være til stede i alle datafiler og kontrollfilen (eller filene). Tilstedeværelsen av et identisk SCN-nummer betyr at datafilene inneholder data for samme tidsperiode. Hvis dataene er konsistente, er det ingen gjenopprettingstrinn etter at du har returnert (eller kopiert) settet med sikkerhetskopifiler til gammelt sted vil ikke være nødvendig.

For å lage en konsistent sikkerhetskopi, må databasen enten slås av (ved å bruke den vanlige SHUTDOWN- eller SHUTDOWN TRANSACTIONAL-kommandoen, men ikke SHUTDOWN ABORT-kommandoen) eller stoppes (ved å bruke den elegante avslutningskommandoen) og startes på nytt i monteringsmodus.

Når du utfører en inkonsekvent sikkerhetskopiering, inneholder sikkerhetskopifilene data fra forskjellige tidsperioder. Faktum er at de fleste produksjonssystemer ikke kan avbrytes for å tillate en koordinert backup. I stedet må disse databasene kjøre 24 timer i døgnet, 7 dager i uken. Dette betyr derfor at disse databasene må sikkerhetskopieres på nett, dvs. så lenge de er åpne for transaksjoner. Endring av datafiler av brukere under en sikkerhetskopiering er det som resulterer i inkonsekvente sikkerhetskopier. Å utføre en inkonsekvent sikkerhetskopiering betyr ikke at du får feil sikkerhetskopiering. Men under gjenoppretting er det ikke nok å returnere slike sikkerhetskopier til den opprinnelige plasseringen. I tillegg til å returnere dem til den opprinnelige plasseringen, må du også sørge for å bruke alle de arkiverte og online-redologgene som ble opprettet mellom tidspunktet sikkerhetskopieringen ble utført og punktet du må gjenopprette databasen til. Oracle vil lese disse filene og automatisk ta i bruk nødvendige endringer på sikkerhetskopifilene.

Fordi en åpen database bare kan utføre inkonsekvente sikkerhetskopier, bruker de fleste produksjonsdatabaser strategier med inkonsekvente sikkerhetskopieringsprosedyrer i kjernen.

Sikkerhetskopier åpen og lukket database

Sikkerhetskopiering åpen baseåpen sikkerhetskopiering, også kalt online backup eller varm/varm backup, innebærer å lage sikkerhetskopier mens databasen er åpen og tilgjengelig for brukere. Du kan utføre en online sikkerhetskopi av en hel database (eller bare en tabellplass eller datafil som tilhører den) bare hvis databasen kjører i ARCHIVELOG-modus. Det kan ikke utføres når databasen er i NOARCHIVELOG-modus.

Sikkerhetskopiering av lukket database, også kalt kald backup, innebærer å lage sikkerhetskopier mens databasen er lukket (stoppet). Denne sikkerhetskopien resulterer alltid i konsistente sikkerhetskopier med mindre databasen stoppes med en SHUTDOWN ABORT-kommando.

Fysisk og logisk backup

MED teknisk poeng Fra et perspektiv kan Oracle backup-prosedyrer deles inn i logiske og fysiske. Logisk sikkerhetskopiering refererer til oppretting av sikkerhetskopier ved hjelp av Data Pump Export-verktøyet som inneholder logiske objekter som tabeller og prosedyrer. Disse sikkerhetskopiene lagres i et spesielt binært format og kan bare hentes ved hjelp av Data Pump Import-verktøyet.

Fysisk sikkerhetskopiering refererer til oppretting av sikkerhetskopier nøkkelfiler Oracle-databaser, dvs. datafiler, arkiverte gjenta loggfiler og kontrollfiler. Disse sikkerhetskopiene kan lagres på enten disk- eller båndstasjoner

Backup nivåer

Følgende er nivåene der Oracle-databaser kan sikkerhetskopieres:

  • Hele databasenivået. Dette nivået innebærer sikkerhetskopiering av alle filer, inkludert kontrollfilen. Du kan utføre sikkerhetskopiering av hele databasen i enten ARCHIVELOG-modus eller NOARCHIVELOG-modus.
  • Bordplassnivå. Dette nivået innebærer å utføre en sikkerhetskopi av alle datafiler som tilhører en bestemt tabellplass. Å utføre sikkerhetskopiering på dette nivået er kun tillatt når du bruker ARCHIVELOG-modus.
  • Datafilnivå. Dette nivået innebærer sikkerhetskopiering av én enkelt datafil. Å utføre sikkerhetskopiering på dette nivået er kun tillatt når du bruker ARCHIVELOG-modus.

Oracle backup må utføres effektivt og raskt, siden Oracle databaseservere vanligvis brukes i de mest belastede operasjonene i det kommersielle segmentet. Praktisk sikkerhetskopi organiserer sikkerhetskopiering av Oracle-sikkerhetskopier gjennom standard verktøy Oracle backup RMAN.

Fordeler med å bruke Oracle RMAN Backup med Handy Backup

En spesialisert Oracle backup plugin i Handy Backup fungerer som et grafisk tillegg (GUI) over standard program Sikkerhetskopier RMAN, bevarer alle funksjonene og funksjonaliteten levert av RMAN-verktøy Sikkerhetskopier Oracle.

Sikkerhetskopiering av en Oracle-database i Handy Backup kan utføres i henhold til en tidsplan i spesifisert tid og med spesifiserte intervaller (fra ett minutt til flere måneder inkludert), så vel som ved forekomsten av en systemhendelse (brukerpålogging, tilkobling av USB-lagring).

Ulike teknikker for å sikkerhetskopiere og gjenopprette Oracle fra en sikkerhetskopi

Med Handy Backup kan du utføre en blandet, differensiell eller inkrementell Oracle-sikkerhetskopi, lagre flere versjoner av en Oracle-databasesikkerhetskopi fra ett kildedatasett, kryptere eller komprimere den resulterende RMAN-sikkerhetskopien, etc.

Lagring for Oracle database backup

Ved å bruke Handy Backup kan du konfigurere RMAN-verktøyet til å sikkerhetskopiere sikkerhetskopier til en rekke datalagringsfasiliteter, inkludert moderne lagringsmedier som:

  • Lokale stasjoner, USB-lagringsenheter, tilkoblede nettverksstasjoner;
  • Er vanlig nettverksmapper, NAS-enheter, FTP-servere, SFTP, FTPS, private skyer;
  • Skytjenester Yandex Disk, Google Drive, Amazon S3, Dropbox, OneDrive og andre;
  • Spesialisert sikker lagring HBDrive, egnet for sikkerhetskopiering av Oracle-databaser.

På en notis: serverløsninger Handy Backup Office Expert og Handy Backup Server Network inneholder alle tilgjengelige plugins for informasjonslagring, slik at du kan organisere en Oracle-databasesikkerhetskopiering til den mest praktiske og pålitelige datalagringen for en spesifikk oppgave.

Hvorfor er det praktisk å bruke RMAN backup via Handy Backup?

Grensesnittet og settet med funksjoner til Handy Backup lar deg bruke RMAN backup-verktøyet som en av programpluginene under kontroll av et enkelt grensesnitt. Du kan ikke bare enkelt opprette eller endre Oracle-databasesikkerhetskopieringsoppgaver, men også administrere dem:

  • Kjør andre applikasjoner før og etter oppgaven, og erstatter effektivt det typiske Oracle PL SQL-sikkerhetskopiskriptet med en praktisk visualisert løsning.
  • Motta rapporter om sikkerhetskopieringsoppgaver og se arbeidslogger i programvinduet eller av e-post, med tilpassbar sendefrekvens.

  • Bruk Handy Backup-nettverksløsninger for Oracle-sikkerhetskopi på eksterne maskiner fra et sentralt administrativt panel.

Hvordan lage en Oracle-sikkerhetskopi ved hjelp av Handy Backup

Her finner du korte instruksjoner på å lage en sikkerhetskopi av en Oracle-database via Handy Backup. Programmet tar seg av alt arbeidet med å samhandle med RMAN-sikkerhetskopieringsverktøyet, slik at du kan sikkerhetskopiere Oracle-databasen og gjenopprette databasen fra sikkerhetskopien automatisk.

  1. å jobbe med backup-funksjoner.
  2. Opprett en ny oppgave i Handy Backup ved å bruke menyen eller knappen "Ny oppgave".
  3. I trinn 1 velger du en sikkerhetskopieringsoppgave. Klikk Neste.
  4. I trinn 2 velger du Oracle-plugin fra Database-gruppen i venstre rute.

  1. Dobbeltklikk på pluginnavnet eller klikk ">>".
  2. Datavalgdialogen åpnes. Merk av i boksene ved siden av databasene for Oracle-sikkerhetskopi.

  1. Klikk OK og gå tilbake til trinn 2. Fortsett med DB:

  • Velg riktig lagring i trinn 3.
  • Velg å opprette en full/inkrementell Oracle-sikkerhetskopi i trinn 4.

  • Konfigurer komprimering og/eller kryptering i trinn 5.
  • Still inn operasjonsplanen etter tid eller hendelse i trinn 6.
  • Kjør andre programmer, kommandoer eller pakker før og/eller etter oppgaven i trinn 7.
  • I trinn 8, navngi oppgaven og fullfør New Task Wizard.

På en notis: du kan senere endre alle detaljer for en oppgave ved å bruke fanesystemet i oppgavevisningsvinduet. Hver fane tilsvarer et spesifikt trinn i New Task Wizard.

Gjenoppretter Oracle fra en sikkerhetskopi

For å gjenopprette en database fra en sikkerhetskopi for Oracle, må du opprette en oppgave automatisk gjenoppretting data. Start New Task Wizard og bruk følgende instruksjoner:

  1. Velg en gjenopprettingsoppgave i trinn 1. Gå til trinn 2.
  2. Åpne datavarehuset, finn Oracle-databasens sikkerhetskopikatalog, og i den filen backup.hbi.

  1. Dobbeltklikk på filnavnet eller klikk på Neste.
  2. Hvis du vil la Oracle gjenopprette databasen fra sikkerhetskopien til dens opprinnelige plassering, klikker du bare på "Neste"-knappen til slutten av oppgaveveiviseren.
  3. Hvis du vil endre gjenopprettingsplasseringen, klikker du på "Endre plassering"-knappen.

I dialogboksen for å velge et gjenopprettingssted, spesifiser serveren du skal gjenopprette Oracle til fra sikkerhetskopien. På denne måten kan du klone og replikere Oracle-sikkerhetskopier.

Prøv Oracle RMAN backup plugin i aksjon ved å laste ned og installere Handy Backup akkurat nå med alle tilgjengelige funksjoner og plugins for en 30-dagers gratis prøveversjon!

Dette dokumentet beskriver retningslinjene og prosedyrene som må følges for Oracle-sikkerhetskopiering på bedriftsnivå ved bruk av programvaren Bacula Enterprise Edition. Dokumentet inneholder også ulike scenarier for å gjenopprette en Oracle-sikkerhetskopi.

Oracle Backup Oversikt

Bacula Enterprise Edition bruker en unik Oracle backup plugin som gjør Oracle backup og gjenoppretting enklere. Plugin-en lar deg bruke avanserte metoder for varme og kalde Oracle-sikkerhetskopier og gjenopprette data og konfigurasjoner som er lagret på 10. og 11. generasjons servere. Plugin-modulen for Oracle-databasesikkerhet lar deg gjenopprette Oracle til et bestemt tidspunkt (til et sjekkpunkt), filtrere objekter under Oracle-sikkerhetskopiering og gjenopprette dem. Den lar deg også lage Oracle-sikkerhetskopier med konfigurasjonsinformasjon som parametere. Programtillegget for Oracle-databasesikkerhetskopiering støttes av Linux 32/64-biters plattformer som støttes av Oracle, samt Oracle 10.x, 11.x-databaser.

Andre fordeler med Oracle backup med Bacula:

  • Når du bruker RMAN-modus, lar plugin-en deg lage inkrementelle og differensielle Oracle-sikkerhetskopier på blokknivå.
  • RMANs endringssporingsfunksjon, som brukes til påfølgende inkrementelle sikkerhetskopier, forbedrer opprettingen av sikkerhetskopier betydelig ved å registrere de endrede blokkene til hver datafil i en endringssporingsfil.
  • Databaseadministratoren trenger ikke ha ferdigheter i å jobbe med Oracle-databasen eller kunne lage komplekse skript for Oracle-sikkerhetskopiering.
  • Denne plugin for å lage og gjenopprette Oracle-sikkerhetskopier er også designet for å lage sikkerhetskopier av konfigurasjonsinformasjon, for eksempel parametere.

Dette dokumentet presenterer ulike måter og Oracle-sikkerhetskopieringsstrategier ved å bruke Bacula Enterprise Edition-programvare og relatert plugin.

Oracle Backup Ordliste

Følgende begreper brukes i dette dokumentet:

  • BUE(Arkivlogg)standard metode, brukes til å sikre dataintegritet. Grunntanken bak ARC er at endringer som gjøres i datafiler (som inneholder tabeller og indekser) først vil bli skrevet etter at endringene er loggført, det vil si etter at loggoppføringene som beskriver endringene har blitt migrert til permanent lagring.
  • PITR Oracle Predefined Point Recovery (PITR) gjenoppretter en database til et spesifikt tidspunkt og bruker deretter inkrementelle sikkerhetskopier og tilbakeføringer for å gjenopprette databasen til det punktet. PITR-gjenoppretting kalles noen ganger ufullstendig fordi PITR-gjenoppretting gjenoppretter databasen til et spesifikt punkt, og selve prosedyren bruker ikke alle Oracle backup-loggfiler.
  • RMAN Oracle Recovery Manager eller RMAN, en kommandolinje og Oracle Enterprise Manager-basert verktøy, er den Oracle-anbefalte metoden for sikkerhetskopiering og gjenoppretting av databaser. RMAN-verktøyet er designet for å fungere direkte med serveren. Verktøyet lar deg bestemme skadede blokker data under sikkerhetskopiering og gjenoppretting av database. RMAN-verktøyet optimerer ytelse og minneforbruk under oppretting av sikkerhetskopier ved å komprimere filer og komprimere sikkerhetskopisettet.
    http://docs.oracle.com/cd/B28359_01/backup.111/b28270/toc.htm
  • EXP/IMP Oracle eksport (exp) / import (imp) verktøy brukes til å utføre logisk sikkerhetskopiering/gjenoppretting av databaser. Ved eksport opprettes en dump av databaseobjekter i form av en binær fil, som deretter kan importeres til en annen Oracle-database.
  • Datapumpe Oracle Data Pump-teknologi er et mer moderne, raskere og mer fleksibelt alternativ til "exp" og "imp"-verktøyene som ble brukt i tidligere versjoner Oracle. Dessverre dette ny metode støtter ikke utdata direkte til en FIFO-fil. Derfor bruk av verktøy Datapumpe krever at du først dumper dataene til disk og deretter leser disse dataene ved å bruke Bacula Enterprise File Daemon. Gjeldende versjon Oracle støtter ikke backup-plugin Datateknologi Pumpe.
  • SBT Som standard sender RMAN alle Oracle-sikkerhetskopier til en spesiell systemkatalogen på disk. Du kan også konfigurere RMAN til å lage sikkerhetskopier på andre medier, for eksempel magnetbånd, ved å bruke SBT-modulen. Bacula vil i dette tilfellet fungere som Media Manager, og dataene vil bli overført direkte fra RMAN til Bacula.
  • libobk SBT-grensesnittet er implementert basert på libobk-biblioteksfilen.
  • Bordplass Databasen er delt inn i logiske lagringsområder kalt tabellplasser, som er gruppert basert på deres logiske struktur. For eksempel grupperer tabellplasser vanligvis alle applikasjonsobjekter sammen for å forenkle administrasjonen.
  • Opplegg er en samling av databaseobjekter. Databasebrukeren eier skjemaet. Skjemaet har samme navn som brukeren. Skjemaobjekter er logiske strukturer, som er direkte relatert til databasedata. Skjemaobjekter inkluderer strukturer som tabeller, visninger og indekser. (Det er ingen sammenheng mellom en tabellplass og et skjema. Objekter fra samme skjema kan være i forskjellige tabellplasser, og tabellplasser kan inneholde objekter fra forskjellige skjemaer.)
  • Forekomst En Oracle-databasetjener består av en Oracle-database og en Oracle-databaseforekomst. Hver gang databasen startes, tildeles et globalt systemområde (SGA) og Oracle-bakgrunnsprosesser startes. Kombinasjon bakgrunnsprosesser og minnebuffere kalles en Oracle-forekomst.
  • SID Oracle System ID (SID) brukes til å identifisere databasen i systemet. Av denne grunn kan ikke mer enn én database med en unik SID eksistere på samme system. Vanligvis er SID spesifisert av "ORACLE_SID"-variabelen. Alternativt kan du finne denne identifikatoren i det første feltet (før 🙂 i /etc/oratab.
  • Kopiere Hver gang du åpner en database med kommandoen ALTER DATABASE OPEN RESETLOGS, opprettes en slik kopi.
  • SCN Systemendringsnummer (SCN) er et tall i Oracle som øker sekvensielt med hver endring som gjøres i databasen: inn, oppdater, slett. SCN-tallet øker også som et resultat av DB-interaksjon.
  • Oracle Recovery– en handling som fører til datautvinning fra en sikkerhetskopi. Etter å ha gjenopprettet databasen, må du kanskje returnere den til opprinnelig tilstand, det vil si rulle tilbake forover til et bestemt kontrollpunkt.
  • Gå tilbake til opprinnelig tilstand– dette er en prosedyre for å oppdatere en gjenopprettet datafil ved å bruke arkiverte logger over "redo"-operasjoner og gjeldende logger, det vil si ved å bruke endringer som er gjort i databasen etter å ha opprettet en sikkerhetskopi.
  • Funksjon Fullmaktskopi er en funksjon i RMAN-verktøyet som ikke støttes av den nåværende implementeringen av SBT-grensesnittet i Bacula Enterprise-programvaren.

Legende

  • Verdier i parentes< >lagt inn av brukere, for eksempel, må erstattes med gjeldende ORACLE_SID-nummer. Hvis ORACLE_SID-nummeret ditt er test TEST, fil skrevet som init .ora vil se ut som initTEST.ora.
  • % betyr at kommandoen må kjøres av en vanlig bruker.
  • # betyr at kommandoen skal kjøres via regnskap privilegert bruker.
  • RMAN> betyr at kommandoen må kjøres i en rman-sesjon.
  • SQL> betyr at kommandoen må kjøres i en sqlplus-sesjon.
  1. Oracle backupmed plugin

Velge en Oracle-sikkerhetskopieringsmetode: Dump eller RMAN-verktøy

Tabellen nedenfor viser fordelene med metoder for sikkerhetskopiering som støttes av Bacula Enterprise-plugin for Oracle. For å velge en eller annen metode, bli veiledet av funksjoner som muligheten til å gjenopprette en Oracle-sikkerhetskopi til et spesifisert sjekkpunkt, muligheten til å filtrere objekter under sikkerhetskopiering eller gjenoppretting. Brukeren kan også kombinere metodene for å lage en dump og bruke RMAN PITR-verktøyet for én klynge.

RMAN-verktøyet lar deg også bruke moderne metoder, takket være den kan du sende data gjennom Bacula Enterprises SBT-grensesnitt, for eksempel til tape og disk samtidig for raskere gjenoppretting.

Funksjon Dump RMAN RMAN SBT
Evne til å gjenopprette ett objekt (tabell, diagram...) Ja Nei Nei
Evne til å gjenopprette én fil (indeks, database, tabell...) Nei Ja Ja
Oracle-sikkerhetskopieringshastighet Lav Høy Høy
Gjenopprettingshastighet Lav Høy Høy*
Oracle backup størrelse Liten Stor Stor
Størrelse pr lokal disk når du oppretter en sikkerhetskopi Ingenting Hele sikkerhetskopien Ingenting
Størrelse på lokal disk under gjenoppretting Ingenting Hele sikkerhetskopien Nødvendige objekter
Evne til å gjenopprette til et sjekkpunkt Nei Ja Ja
Støtte for inkrementell/differensiell sikkerhetskopiering av Oracle Nei Ja Ja
Parallell utvinning Ja Ja Ja
Oracle online backup Ja Ja Ja
Konsistens Ja Ja Ja
Evne til å gjenopprette til en tidligere hovedversjon av Oracle Nei Nei Nei

Tabell 1. Oracle-gjenopprettingsmetoder

*Når du bruker RMAN SBT-grensesnittet, vil gjenopprettingshastigheten avhenge av ulike elementer som medietype (tape eller disk), nettverksoverføringshastighet, tilgjengeligheten av enheten med guardian daemon, osv... I Bacula Enterprise programvareversjon 6.4 og høyere kan en enhet med en vergedemon bruke samme diskvolum for flere parallelle gjenopprettinger. Dermed er det mulig å utføre flere Oracle-gjenopprettings- og sikkerhetskopieringsoppgaver samtidig.

Konfigurere RMAN SBT

I denne seksjonen brukerhåndboken beskriver riktig installasjon og konfigurere Bacula Enterprise SBT-grensesnittet ved hjelp av Oracle og RMAN.

Når du oppretter en Oracle-sikkerhetskopi eller kjører en sikkerhetskopi fra RMAN, må RMAN kontakte den sentraliserte Bacula Enterprise Director for å få fil- og voluminformasjon eller for å kjøre en Oracle-sikkerhetskopiering eller -gjenoppretting. For å etablere en tilkobling trenger du generell batch-filer FIFO og b-konsoll.

Når du bruker oracle-sbt-fd-pluginen, vil ikke direktøren kunne kjøre en Oracle-sikkerhetskopi fra b-konsollen eller fra tidsplanen. Bare RMAN-verktøyet vil kunne starte en økt og starte sikkerhetskopieringen. Tenk på det faktum at du fortsatt kjører en standard Oracle-systemsikkerhetskopi, og bruk deretter RunScript for å automatisk anrop RMAN.

Konfigurering av Bacula Når du bruker SBT-grensesnittet, må du installere b-konsollen (Bacula-konsollen). Konsollen må tillate deg å koble til den sentraliserte direktøren og få tilgang til den lokale klienten, Oracle-sikkerhetskopieringsoppgaven og andre bassengegenskaper.

For å bruke konsollen med begrensede muligheter, kan du bruke etter følgende definisjon konsoller:

Figur 1. Oracle backup ved interaksjon mellom RMAN og Bacula

"Oracle" Unix-brukeren skal kunne vise b-konsollen og lese den tilsvarende konfigurasjonsfilen bconsole.conf, som ikke er det standardkonfigurasjon. Du kan kopiere den binære og konfigurasjonsfil til en mappe /opt/bacula/oracle ved å bruke følgende Unix-kommandoer:

Viktig: Du kan trenge en kopi av den binære b-konsollen etter hver Bacula Enterprise-oppdatering.

Utføre parallelle oppgaver ved sikkerhetskopiering av en Oracle-database

For å kjøre en Oracle-sikkerhetskopiering eller -gjenoppretting ved hjelp av flere kanaler, må du sørge for at alle nødvendige Oracle DB-sikkerhetskopiplugin-ressurser er riktig konfigurert ved å bruke kommandoen Maximum Concurrent Jobs for å tillate parallelle oppgaver å kjøre.

  • Regissør: Regissør (eks: 100)
  • Regissør: klient (eks: 10)
  • Regissør: Job (eks: 10)
  • Regissør: Storage (eks: 10)
  • Lagring: Lagring (eks: 100)
  • Lagring: Enhet (f.eks.: 10 eller 10 enheter gruppert i en Virtual Changer)
  • Klient: FileDaemon (eks: 10)

For å aktivere sikkerhetskopierings- og gjenopprettingsoppgaver til å kjøre samtidig på den samme Director Storage-ressursen, må konfigurasjonen bruke en Virtual Changer-stasjon. For spesifikk konfigurasjonsinformasjon, se teknisk dokumentasjon Disksikkerhetskopiering.

Medierestriksjoner

Oracle krever at Bacula Enterprise Media Manager ikke slår sammen datastrømmer fra to parallelle API-økter til samme seriell enhet. Dette betyr at hvis du bruker en båndstasjon til å sikkerhetskopiere en Oracle-database, må du bruke en annen båndstasjon for hver parallell sikkerhetskopieringsoppgave. Denne begrensningen gjelder ikke for harddisker. Denne begrensningen krever en spesielt lang restitusjon.

Konfigurere Bacula SBT

libobk kan konfigureres ved hjelp av en fil /opt/bacula/oracle/sbt.conf eller / opt/bacula/etc/sbt.conf eller bruke kommandoen RMAN SEND. Tabell 2 viser beskrivelsene som er brukt:

Parameter Beskrivelse Eksempel
klient Bacula klientnavn klient=oracle-fd
gjenopprettingsklient Bacula-klientnavn brukt for gjenoppretting restoreclient=oracle-fd
jobb b-console kommando med argumenter

bconsole="/tmp/bconsole -n"

gjenopprette jobb Bacula gjenopprettingsoppgavenavn. Hvis du har flere gjenopprettingsoppgaver definert i konfigurasjonen, og denne parameteren ikke brukes, vil SBT-plugin-modulen automatisk velge den første spesifiserte gjenopprettingsoppgaven. restorejob=Gjenopprett filer
vente på fullføring Venter på at oppgaven skal fullføres på slutten av SBT-økten. Som standard avsluttes økten så raskt som mulig. Vær oppmerksom på at dette alternativet kun skal brukes når du starter en sikkerhetskopi fra RMAN. vente på fullføring
Oppdater Oppdateringstype (lokal katalog). Hvis filnavnet finnes i den lokale katalogen, svarer plugin direkte til RMAN uten å kontakte Bacula Director. Bruk update=force-kommandoen for å tvinge Bacula Director-verifisering. update=force
jobbopt Ekstra oppgaveparameter jobopt="spooldata=no"
backupdir Lokal katalogmappe backupdir=/opt/bacula/oracle
ctrlfile Hovedsti til kontrollfilen ctrlfile=/tmp/oracle
ctrltimeout Pause når du kobler til Bacula ctrltimeout=300
prøv på nytt Antall forsøk på å koble til Bacula
lokaldir Lokal mappe for datafilen som SBT-pluginen vil sjekke før gjenopprettingsoppgaven for Bacula kalles.

Localdir=/tmp/@ORACLE/sbt

katalog Katalognavn Bacula catalog="MyCatalog 2"
spore Filbanesporingsfil trace=/tmp/log.txt
feilsøke Feilsøkingsnivå

Tabell 2. SBT libobk konfigurasjon

Minimumsparametrene som må spesifiseres i konfigurasjonsfilen er klient, oppgave og b-konsoll. Vennligst ta hensyn til det faktum at du trenger å bruke doble anførselstegn, hvis det konfigurerte elementet inneholder mellomrom (for eksempel b-konsoll).

Disse innstillingene kan overskrives ved å bruke RMAN SEND-kommandoen.

SEND-kommandoen er begrenset til 512 byte, så flere SEND-kommandoer kan brukes til å spesifisere alle parameterne. Det vil være bedre å unngå lange veier når du bruker SBT-grensesnittet.

FileSet-konfigurasjon

Oracle SBT database backup plugin (oracle-sbt) godtar parametere i jobbfilsettet, som beskrevet i tabell 3.

Tabell 3. Parametre Oracle-plugin SBT

Tester sbt.conf-konfigurasjonen

For å teste Bacula-plugin-konfigurasjonen Enterprise Oracle SBT, en privilegert bruker kan bruke følgende kommandoer:

Hvis det oppstår en tilkoblingsfeil, vises en melding. Før du har konfigurert tilkoblingsinnstillingene riktig, er det ingen vits i å kjøre en Oracle RMAN-sikkerhetskopi.

Bacula SBT intern katalog

libobk fil Bacula Enterprise programvare bruker en lokal katalog for å lagre informasjon om alle filer. Denne informasjonen kan være utdatert. Derfor kan du bruke update=force-parameteren i sbt.conf-filen eller SEND-kommandoen for å tvinge frem et søk etter Bacula-katalogen.

Standardkatalogen er lagret i / opt/bacula/oracle/bacula-sbt.cat og kan være en del av en vanlig systemsikkerhetskopiering.

Evne til å lagre Oracle RMAN-sikkerhetskopi

Når du bruker RMAN SBT Bacula Enterprise-plugin-modulen, må Oracle-sikkerhetskopieringsfunksjonen angitt av RMAN-verktøyet samsvare med Bacula-volumet eller minnejobben. Når RMAN sender kommandoer for å slette sikkerhetskopifiler, vil ikke Bacula forsøke å rydde opp eller slette noe.

Eksempler på Oracle-sikkerhetskopier

Følgende eksempel beskriver hvordan du kjører 3 parallelle Bacula backup-jobber samtidig. I dette tilfellet vil RMAN-verktøyet sende data til dem ved å bruke den såkalte round robin-algoritme. Hvis RMAN-verktøyet ikke er i stand til å kommunisere med Bacula på en eller flere kanaler, vil RMAN automatisk sende data til en tilgjengelig kanal. Dette betyr at hvis din lagring eller sentraliserte direktør er opptatt (begrenset av antall enheter eller innstillinger maksimal mengde parallelle oppgaver), vil RMAN finne en vei ut automatisk.

I dette eksemplet bruker RMAN 3 Bacula-oppgaver for å gjenopprette 3 filer.

RMAN-moduskonfigurasjon

Denne delen av brukerhåndboken beskriver hvordan du konfigurerer RMAN-verktøyet til riktig drift med den delen av Oracle-database backup-plugin som ikke bruker SBT-grensesnittet.

Den gjeldende versjonen av Oracle-tilleggsmodulen for databasesikkerhet støtter bare databaser som er startet fra aktiv modus ARKIVLOGG.

ARCHIVELOG-konfigurasjon i Oracle

For å bruke Oracle backup-opprettingsmodus med RMAN, må databasen startes i ARCHIVELOG-modus. For å sjekke hvordan databasen din er konfigurert, kan du bruke følgende SQL-kommando.

For å aktivere arkiveringsmodus for en database, kan du bruke ALTER DATABASE ARCHIVELOG-kommandoen i SYSDBA-tilstanden.

  • Stopp databasen ved å bruke SHUTDOWN-kommandoer
  • Lag en sikkerhetskopi av databasen
  • Rediger init-filen .ora for å konfigurere den arkiverte loggplasseringen
  • Start databasen uten å åpne den ved å bruke STARTUP MOUNT-kommandoen
  • Endre arkiveringsmodus ved å bruke kommandoen ALTER DATABASE ARCHIVELOG; og åpne den ved å bruke ALTER DATABASE OPEN-kommandoen;
  • Stopp databasen ved å bruke SHUTDOWN IMMEDIATE-kommandoen
  • Lag en databasesikkerhetskopi igjen, siden endring av ARCHIVELOG vil oppdatere kontrollfilene og gjøre gamle sikkerhetskopier ubrukelige. Bacula Enterprise-pluginen for Oracle vil lage en RMAN-sikkerhetskopi plassert i en undermappe på stedet der den arkiverte loggen er plassert, spesifisert i init-filen .ora.

Optimalisering av Oracle Incremental Backup

RMANs endringssporingsfunksjon for å lage inkrementelle Oracle-sikkerhetskopier forbedrer effektiviteten til slike sikkerhetskopier ved å registrere endrede blokker i hver datafil til en endringssporingsfil. Når endringssporing er aktivert, bruker RMAN endringssporingsfilen til å identifisere endrede blokker for å lage inkrementelle sikkerhetskopier. Dette eliminerer behovet for å skanne hver blokk i datafilen.

Etter aktivering av endringssporingsfunksjonen, i tilfelle den første fullstendige sikkerhetskopieringen, vil systemet fortsatt måtte skanne alle datafiler, siden endringssporingsfilen ennå ikke gjenspeiler tilstandene til alle blokker. Eventuell påfølgende inkrementell sikkerhetskopiering ved hjelp av dette full backup som forelder, vil bruke endringssporingsfilen.

Følgende SQL-kommando, kjør som sysdba, aktiverer endringssporingsfunksjonen og bruker plasseringen "/path/to/file" som den arkiverte loggplasseringen. (Vær oppmerksom på at filen må være i en gyldig mappe som Oracle-brukeren kan skrive til.)

RMAN backup evne

Når du bruker RMAN-modus med Bacula Enterprise-plugin for Oracle, vil hver Bacula-oppgave kjøre RMAN for å lage et sett med sikkerhetskopier. Vi anbefaler å konfigurere RMAN-verktøyet for å slette gamle filer senere Viss tid. Selv om denne operasjonen kan utføres umiddelbart etter at sikkerhetskopieringen er fullført, anbefaler vi at du lagrer dataene på disken lenger slik at det ikke er noen problemer med muligheten til å gjenopprette Oracle til kontrollpunkter. Følgende kommando vil hjelpe deg å sette Oracle-fillagringsperioden til 7 dager. Dette bør være nok tid forutsatt at du sikkerhetskopierer Oracle minst en gang hver 7. dag.

Mer detaljert informasjon finner du i håndboken for RMAN-verktøyet

docs.oracle.com/cd/B28359_01/backup.111/b28270/rcmconfb.htm#i1019318

Konfigurere Oracle Plugin for RMAN

Hvis du bruker RMANs PITR-gjenopprettingsfunksjon, vil Bacula-plugin for Oracle kreve at nøyaktig modus aktiveres. Du må aktivere nøyaktig modus på oppgaveressursen. Vær oppmerksom på at i forbindelse med programtillegget, brukes Nøyaktig-funksjonen for å sikre at alle nye filer lagres av Bacula-pluginen, men ikke merkes som slettet, da de sannsynligvis vil være nyttige igjen.

I RMAN-modus tillater plugin-modulen for Oracle også bruk av tilleggsparametere spesifisert via plugin-kommandolinjen. Se tabellen nedenfor:

Parameter Beskrivelse Misligholde Eksempel
modus Det er nødvendig å aktivere PITR backup i RMAN-modus Dump mode=rmann
Oracle_user Privilegert Unix-bruker Oracle orakel oracle_user=oracle10
sid Oracle SID SID=XE
Oracle_SID Oracle SID Oracle_SID=XE
Oracle_HOME Oracle HJEM ORACLE_HOME=/opt/oracle/...
ordrik RMAN-utgang vises som 0 i oppgaven verbose=1
sbt Bruker SBT i RMAN sbt
ctrlfile Hovedvei for å kontrollere filer ved bruk av SBT ctrlfile=/tmp/oracle

Tabell 4. Plugin-parametere for Oracle i RMAN-modus

Ved å bruke where=/ eller where= vil plugin-en laste dette SQL-fil til databasen din. Hvis noen roller allerede eksisterer, vil en feilmelding vises i jobbloggen. Du kan også gjenopprette filen users.sql til en lokal katalog, redigere den og laste den ved hjelp av sqlplus for å gjenopprette en valgt del av filen.

Gjenoppretter én Oracle-database. For å gjenopprette et enkelt skjema ved å bruke Bacula Enterprise Plugin for Oracle, må du velge et katalogskjema under gjenopprettingskommandoen, valget må inneholde en datafil (data.dmp) og et skript for opprettelse av skjema (user.sql).

Ris. 3 Databaseinnhold med dump i BWeb

Når DB-katalogen er valgt, kan du bruke where-parameteren for å gjenopprette skjemaet til et nytt skjema med et annet navn. For å lage et nytt skjemanavn, må du sette likhetstegn mellom where-parameteren til et enkelt ord som inneholder tegnene A..Z, 0-9 og _. Bacula-plugin-modulen vil da opprette det angitte skjemaet og gjenopprette dataene til det.

Vi anbefaler at du alltid bruker store bokstaver i navnene på ordningene. Bacula Enterprise-pluginen for Oracle vil gjenskape det nye skjemaet ved å bruke navnet du spesifiserte i parameteren where=. Hvis du bruker store bokstaver og små bokstaver i navnet kan det være en situasjon der du må sette skjemanavnet i anførselstegn for å få tilgang til det.

Etter gjenoppretting må du kanskje tilbakestille passordet til skjemaet du nettopp opprettet med de samme innstillingene som det opprinnelige skjemaet. For å gjøre dette, kjør:

Hvis du setter parameteren til aldri, vil Bacula-pluginen sjekke listen over skjemaer og avbryte oppgaven hvis det gjeldende skjemaet som gjenopprettes allerede eksisterer.

Hvis parameteren where er en katalog (som inneholder /), vil Bacula-pluginen gjenopprette alle filene til den katalogen. På denne måten kan du bruke imp-katalogen og gjenopprette bare triggere, tabeller, indekser osv.

Gjenopprette et enkelt Oracle-bord. For å gjenopprette et enkelt objekt, for eksempel en tabell, fra en dump du opprettet, må du først gjenopprette dumpfilen til en lokal katalog. Bruk deretter imp-verktøyet til å importere ønsket objekt. For mer informasjon, se dokumentasjonen om import av objekter til Oracle.

Gjenopprette Oracle-dumpfiler til en katalog. For å gjenopprette SQL-dumper til en katalog, kan du tilordne where-parameteren til en hvilken som helst gyldig katalog.

Oracle-gjenopprettingsprosessen med Bacula-plugin vil opprette følgende mapper når du gjenoppretter SYS-skjemaet i Oracle SID XE, og vil gjenopprette de valgte filene i den.

Gjenoppretter hele Oracle-databasen. For å gjenopprette alle databaser og databasekonfigurasjoner, gjenopprett ganske enkelt alle filene som ligger i /@ORACLE/ , bruk replace=alltid og where=/.

Begrensninger for Oracle Backup and Restore

Standard plugins er ikke kompatible med kopier/migrering/VirtualFull oppgaver.

Hei, kjære lesere av bloggsiden! Jeg presenterer for din oppmerksomhet en artikkel om sikkerhetskopiering og gjenoppretting av Oracle-databasen. Jeg tror dette materialet vil være nyttig for administratorer som utfører sikkerhetskopiering og gjenoppretting på en Oracle-server som bruker Recovery Manager (RMAN).

Sikkerhetskopiering og gjenoppretting

For å forstå artikkelen, er det tilrådelig å ha kunnskap på følgende områder:

  • Relasjonsdatabasekonsepter og grunnleggende administrasjon.
  • OS-miljøet som Oracle-databasen kjører under.

Faktisk er denne artikkelen den innledende i en serie artikler viet til de grunnleggende konseptene for sikkerhetskopiering og gjenoppretting. Jeg anbefaler dette materialet for alle brukere som er ansvarlige for sikkerhetskopiering og gjenoppretting. Generelt vil artikkelen være av interesse for alle brukere, ikke bare de som bruker RMAN. I fremtiden planlegger jeg å fortelle deg mer om sikkerhetskopierings- og gjenopprettingsteknologier ved å bruke Recovery Manager. Brukere som administrerer sikkerhetskopiering og gjenoppretting uten RMAN, må gjøre seg kjent med konseptene i denne artikkelen og påfølgende innlegg om sikkerhetskopiering og gjenoppretting.

Derfor er formålet med dette settet med artikler å gi en generell oversikt over konseptene for sikkerhetskopiering og gjenoppretting, se på Oracle-databasefiler relatert til sikkerhetskopiering og gjenoppretting, og også utforske verktøyene som er tilgjengelige for sikkerhetskopiering og gjenoppretting av databasen, beskytte mot informasjonstap og andre feil.

Så hva er sikkerhetskopiering og gjenoppretting? Sikkerhetskopiering og gjenoppretting innebærer ulike strategier og prosedyrer knyttet til å beskytte databasen din mot tap av informasjon og gjenopprette databasen etter enhver form for tap av data.

Fysiske og logiske sikkerhetskopier

Sikkerhetskopiering er en kopi av data fra databasen som kan brukes til gjenoppretting. Sikkerhetskopier kan deles inn i fysiske sikkerhetskopier Og logiske sikkerhetskopier.

Fysiske sikkerhetskopier er sikkerhetskopier av fysiske filer som brukes til å lagre og gjenopprette databasen, for eksempel datafiler, kontrollere filer, loggfilarkiver. Til syvende og sist er hver fysisk sikkerhetskopi en kopi av filer som lagrer informasjon om databasen på et annet sted (på disk, på bånd osv.).

Logiske sikkerhetskopier inneholder logiske data (for eksempel tabeller eller lagrede prosedyrer), eksportert fra databasen ved hjelp av Oracle-eksportverktøyet og lagret som en binær fil - for påfølgende import til databasen ved hjelp av Oracle-importverktøyet.

Fysiske sikkerhetskopier er grunnlaget for enhver pålitelig sikkerhetskopierings- og gjenopprettingsstrategi, mens logiske sikkerhetskopier er et nyttig tillegg til fysiske sikkerhetskopier i mange tilfeller, men de er ikke tilstrekkelige til å gi tilfredsstillende beskyttelse mot tap av data uten fysisk sikkerhetskopiering.

Videre vil begrepet "sikkerhetskopiering" i denne artikkelen om sikkerhetskopiering og gjenoppretting først og fremst bety fysiske sikkerhetskopier (hvis det ikke er spesifisert hvilke sikkerhetskopier vi snakker om), og ta en sikkerhetskopi deler av eller hele databasen vil bety å lage en av typene fysiske sikkerhetskopier. Vekten i artikkelen ligger hovedsakelig på fysiske sikkerhetskopier.

Feil og feil som krever gjenoppretting fra sikkerhetskopi

Selv om det er flere typer problemer som kan forstyrre den normale funksjonen til en Oracle-database eller I/O-operasjoner, krever vanligvis bare to av dem administratorintervensjon (DBA) og mediegjenoppretting: mediefeil (mediefeil). harddisk etc.), og brukerfeil.

Andre feil kan kreve DBA-intervensjon for å laste databasen på nytt (etter en forekomstkrasj) eller tildele ytterligere diskplass(etter en feil kl kjører sql forslag på grunn av for eksempel en overfylt datafil), men disse situasjonene vil generelt sett ikke føre til tap av data og vil ikke kreve gjenoppretting fra en sikkerhetskopi.

Brukerfeil

Brukerfeil oppstår enten på grunn av feil i applikasjonslogikken, eller ved avvik fra bruksanvisningen endres eller slettes dataene i din database feil. Informasjonstap på grunn av brukerfeil inkluderer feil som sletting av viktige tabeller eller sletting eller endring av innholdet i en tabell. Mens brukeropplæring og nøye rettighetsadministrasjon kan beskytte mot de fleste brukerfeil, vil sikkerhetskopieringsstrategien din avgjøre hvor elegant du gjenoppretter tapte data når brukerfeil forårsaker tap av informasjon.

Feil på lagringsmedier

Mediafeil– dette er en feil ved lesing eller skriving av en fil på disken som kreves for at databasen skal fungere, pga fysisk problem med disk. For eksempel hodesvikt. Enhver databasefil kan bli skadet på grunn av mediefeil.

Den riktige metoden for å gjenopprette fra en mediefeil avhenger av hvilke filer som ble berørt av feilen, samt hvilke typer sikkerhetskopier som er tilgjengelige.

Oracle Backup and Recovery Solutions: RMAN og Custom Backups

For å utføre sikkerhetskopiering og gjenoppretting basert på fysiske sikkerhetskopier har du to løsninger til rådighet:

  • Recovery Manager– verktøy (fungerer fra kommandolinje, eller fra Enterprise Manager GUI), som integreres med økter som kjører på Oracle-serveren for å utføre en rekke handlinger relatert til sikkerhetskopiering og gjenoppretting, samt opprettholde en historikk over sikkerhetskopiene dine
  • Tradisjonell tilpasset sikkerhetskopiering og gjenoppretting(dvs. brukeradministrert og kontrollert) hvor du direkte administrerer filene som utgjør databasen din ved hjelp av OS-kommandoer og SQL*Pluss sikkerhetskopierings- og gjenopprettingsmuligheter

Begge metodene støttes av Oracle og er fullt dokumentert. Recovery Manager er imidlertid den foretrukne løsningen for sikkerhetskopiering og gjenoppretting av databaser. Den kan utføre de samme typene sikkerhetskopiering og gjenoppretting tilgjengelig med tilpasset sikkerhetskopiering og gjenoppretting, men på en mye enklere måte, og RMAN gir også et felles grensesnitt for sikkerhetskopieringsoppgaver på tvers av forskjellige operativsystemer, og tilbyr også en rekke sikkerhetskopieringsteknologier som ikke er tilgjengelige med manuelle sikkerhetskopieringsmetoder.

Det meste av artikkelen vil fokusere på sikkerhetskopiering og gjenoppretting ved hjelp av RMAN. Jeg planlegger å beskrive tilpassede sikkerhetskopierings- og gjenopprettingsmetoder i fremtidige artikler om sikkerhetskopiering og gjenoppretting.

Uansett hvilken metode du bruker (RMAN eller en tilpasset metode), kan du supplere dine fysiske sikkerhetskopier med logiske sikkerhetskopier av skjemaobjekter, som utføres gjennom eksportverktøy. Data lagret på denne måten kan senere importeres for å gjenskape disse objektene etter gjenoppretting fra en fysisk sikkerhetskopi. Jeg vil imidlertid ikke vurdere logiske sikkerhetskopier i denne artikkelen (da vil jeg skrive en egen artikkel om logiske sikkerhetskopier).

Takk for din oppmerksomhet! Ikke gå glipp av fortsettelsen av emnet om sikkerhetskopiering og gjenoppretting i fremtidige artikler, som jeg vil prøve å skrive i nær fremtid. Lykke til!.