Zálohujte databázu Oracle pomocou RMAN Backup Database. Úrovne zálohovania. Obnova stratenej databázy Oracle

  • 15.05.2019

Hlavné charakteristiky:

Obraz disku, záloha NAS, záloha otvorených súborov (VSS), trvalá licencia
Už od 29 €

BEZPLATNÝ ZÁLOŽNÝ SOFTVÉR PRE SERVER A PRACOVNÉ STANICE

BEZPLATNÉ ZÁLOHOVANIE A PROFESIONÁLNE RIEŠENIA

Iperius je kompletný nástroj Windows pre údaje zálohovanie. Môžete použiť verziu Freeware (tiež pre Windows Server) na zálohovanie súborov na NAS, externé disky, jednotky RDX atď. bez časového obmedzenia – alebo si vyberte podnikovú verziu s množstvom funkcií zálohovania a pokročilé funkcie: kópia otvorených súborov (VSS), Drive Image pre obnovu po havárii, zálohovanie virtuálnych strojov ESXi a Hyper-V, SQL Server a zálohovanie databázy MySQL, Exchange Server záloha, záloha na pásku LTO, záloha do cloudu ( disk Google, Amazon S3 atď.), zálohovanie na FTP/SFTP. Od verzie Iperius Free je možné aktivovať skúšobnú verziu plnej verzie na testovanie všetko vlastnosti softvéru.

Konzola Iperius

MAJTE VŠETKY ZÁLOHY POD KONTROLOU

Iperius Console je pokročilý nástroj na centralizovanú správu a monitorovanie vašich počítačov a zálohovanie. Pomocou vyhradenej desktopovej aplikácie alebo len tak sieť Na portáli si môžete prezerať výsledky operácií zálohovania, skúmať podrobnosti o akýchkoľvek chybách, nastavovať a prispôsobovať plánovanie zálohovania a tiež spúšťať úlohy zálohovania na diaľku. Konzola sa dokonale integruje so všetkými produktmi balíka Iperius Suite, čo umožňuje aj vzdialenú aktualizáciu zálohy Iperius na najnovšiu verziu. Vďaka veľkému množstvu poskytovaných informácií sú používatelia informovaní o stave každého počítača a servera, na ktorom je nainštalovaný Iperius, vďaka čomu je Iperius Console mimoriadne užitočným nástrojom na monitorovanie IT pre vašich zákazníkov aj pre vašu spoločnosť.

Bla bla bla. Vždy je potrebné zálohovať, inak to bude ako na obrázku „Zahodil databázu a neurobil zálohy“.

Zálohy by sa mali vykonávať automaticky, podľa zavedené pravidlá. Správca by mal zasiahnuť, ak sa niečo pokazilo, a nie vždy, keď je potrebná záloha.

Zálohy by mali byť uložené na inom serveri, pokiaľ možno nie v rovnakej miestnosti. Ak to nie je možné, mal by byť uložený na inom disku, než na ktorom sú uložené databázové súbory.

Zálohovanie databáz Oracle zahŕňa zálohovanie dátových súborov, riadiacich súborov a archivovaných protokolových súborov. Okrem toho môžu byť do náhradnej sady zahrnuté spfile, init.ora, listener.ora a tnsnames.ora.

Zálohovanie sa vykonáva:

Na centralizované ukladanie záloh veľkého počtu databáz Oracle navrhuje použiť Oracle Catalog - ďalšiu databázu vytvorenú špeciálne pre zálohy (zatiaľ neviem povedať, čo je v nej uložené. Nikdy som ju nepoužil). Z nejakého dôvodu som si myslel, že sú v ňom uložené zálohy. Niečo však o tom začalo pochybovať.

Okrem záloh môžete exportovať požadovaná schéma vyplniť. Ak chcete, môžete ho importovať aj neskôr. Toto nevyžaduje žiadne iné súbory okrem samotného súboru výpisu.

Režimy ARCHIVELOG a NOARCHIVELOG

Oracle zapisuje všetky zmeny, ktoré sa vykonajú v dátových blokoch v pamäti, do online redo logov, zvyčajne pred ich zápisom do databázových súborov. Počas procesu obnovy Oracle použije zmeny v týchto protokolových súboroch na aktualizáciu databázy. Oracle podporuje dva režimy správy takýchto súborov.

  • Režim archivácie denníkov (ARCHIVELOG). V tomto režime Oracle ukladá (archivuje) vyplnené redo protokoly. Preto bez ohľadu na to, ako dlho sa záloha nevykonala, ak je použitý režim ARCHIVELOG, databázu je možné kedykoľvek obnoviť do akéhokoľvek bodu v čase pomocou archívnych protokolov.
  • Režim bez archivácie protokolov (NOARCHIVELOG). V tomto režime sa úplné opakované záznamy prepíšu namiesto uloženia. To teda znamená, že ak používate režim NOARCHIVELOG, môžete obnoviť iba zo zálohy a že všetky ostatné zmeny, ktoré boli vykonané v databáze od Rezervovať kópiu, sa stratí. Tento režim zaisťuje, že obnovu možno vykonať až po zlyhaní inštancie databázy. V prípade problémov s médiami (napríklad strata disku) je možné databázu fungujúcu v režime NOARCHIVELOG obnoviť iba zo zálohy a samozrejme so stratou všetkých zmien, ktoré boli v nej vykonané po vytvorení zálohy. .

Takmer všetky produkčné databázy fungujú v režime ARCHIVELOG. Režim NOARCHIVELOG sa používa iba vtedy, keď je možné obnoviť údaje z iných zdrojov, alebo keď je databáza ešte vo fáze vývoja alebo testovania a teda nepotrebuje možnosť obnovy svojich údajov s presnosťou do minúty.

Zálohujte celú databázu alebo jej časť

Môžete zálohovať celú databázu aj len jej časť, ako napríklad tabuľkový priestor alebo dátový súbor, ktorý je v nej zahrnutý. Všimnite si, že keď databáza beží v režime NOARCHIVELOG, nemôžete zálohovať iba časť databázy, nazývanú aj čiastočná záloha databázy, pokiaľ všetky tabuľkové priestory a súbory, ktoré sa majú zálohovať, nie sú určené len na čítanie. Môžete vykonať zálohu celej databázy, tiež známu ako záloha celej databázy, v režime ARCHIVELOG alebo NOARCHIVELOG.

Najčastejšie sa vykonáva úplná záloha. Ide o skopírovanie nielen všetkých dátových súborov, ale aj jedného ďalšieho dôležitý súbor- manažér. Bez riadiaceho súboru Oracle neotvorí databázu, takže okrem zálohovania všetkých dátových súborov musíte mať na obnovu aj najnovšiu zálohu riadiaceho súboru.

Konzistentné vs. nekonzistentné zálohovanie

Výsledkom konzistentného zálohovania sú konzistentné zálohy a nevyžaduje si proces obnovy. Pri použití zálohy na obnovu databázy alebo jej časti (napríklad tabuľkového priestoru alebo dátového súboru) je zvyčajne potrebné najskôr overiť obnovu dát zo zálohy (t. j. procedúru RESOTRE) a následne obnoviť databázu do zdravie (tj .postup RECOVER). V prípade konzistentnej zálohy nie je potrebný žiadny z týchto krokov obnovy. V prípade nekonzistentnej zálohy sú tieto kroky obnovy vždy povinné.

Spoločnosť Oracle prideľuje každej transakcii jedinečné číslo zmeny systému (SCN). Každé potvrdenie napríklad zvýši toto číslo. Kedykoľvek Oracle nastaví kontrolný bod, všetky údaje, ktoré sa zmenili operačný súbor dáta sa zapisujú na disk. A kedykoľvek sa to stane. Oracle vykoná aktualizáciu kontrolný bod kontrolný bod vlákna v kontrolnom súbore. Počas tejto aktualizácie sa Orale uistí, že všetky dátové súbory na čítanie/zápis a kontrolné súbory súhlasia s rovnakým SCN. Databáza sa považuje za konzistentnú, keď SCN uložené v hlavičkách všetkých dátových súborov sú identické a zhodujú sa s informáciou hlavičky dátového súboru obsiahnutou v kontrolných súboroch. Hlavná vec na zapamätanie je, že rovnaké číslo SCN musí byť prítomné vo všetkých dátových súboroch a kontrolnom súbore (alebo súboroch). Prítomnosť identického čísla SCN znamená, že dátové súbory obsahujú dáta za rovnaké časové obdobie. Ak sú údaje konzistentné, po vrátení (alebo skopírovaní) zálohy do pôvodného umiestnenia sa nevyžadujú žiadne kroky obnovy.

Ak chcete vytvoriť konzistentnú zálohu databázy, databáza sa musí buď zatvoriť (normálnym príkazom SHUTDOWN alebo SHUTDOWN TRANSACTIONAL, nie príkazom SHUTDOWN ABORT), alebo zastaviť (príkazom na elegantné vypnutie) a znova spustiť v režime pripojenia.

Pri nekonzistentnom zálohovaní sa ukáže, že záložné súbory obsahujú údaje za rôzne časové obdobia. Faktom je, že väčšina produkčných systémov nemôže byť prerušená kvôli konzistentným zálohám. Namiesto toho musia tieto databázy bežať 24 hodín denne, 7 dní v týždni. To teda znamená, že tieto databázy musia byť zálohované online, tzn. pokiaľ zostanú otvorené pre transakcie. Úprava dátových súborov používateľmi počas zálohovania je práve to, čo vedie k nekonzistentným zálohám. Uskutočnenie nekonzistentného zálohovania neznamená vytvorenie nesprávnych záloh. Počas obnovy však nestačí vrátiť takéto zálohy na pôvodné miesto. Okrem ich vrátenia na pôvodné miesto je potrebné dbať aj na to, aby boli aplikované všetky archivované a online redo logy, ktoré boli vytvorené medzi časom vykonania zálohy a časom, do ktorého je potrebné databázu obnoviť. Oracle tieto súbory prečíta a automaticky použije všetky potrebné zmeny na tieto záložné súbory.

Keďže s otvorenou databázou možno vykonávať iba nekonzistentné zálohy, pre väčšinu produkčných databáz sa používajú stratégie s nekonzistentnými postupmi zálohovania.

Zálohovanie otvorenej a uzavretej databázy

Otvorená záloha databázy (otvorená záloha), tiež nazývaná online záloha alebo horúca záloha (horúca / teplá záloha), zahŕňa vytváranie záloh s otvorenou databázou a prístupnou používateľom. Online zálohu celej databázy (ako aj len tabuľkového priestoru alebo dátového súboru, ktorý k nej patrí) môžete vykonať iba v prípade, že databáza beží v režime ARCHIVELOG. Nedá sa spustiť, keď je databáza v režime NOARCHIVELOG.

Uzavretá záloha databázy, nazývaná aj studená záloha, zahŕňa vytváranie záloh, keď je databáza zatvorená (zastavená). Výsledkom takýchto záloh sú vždy konzistentné zálohy, pokiaľ databáza nebola zastavená príkazom SHUTDOWN ABORT.

Fyzické a logické zálohovanie

Z technického hľadiska postupy zálohovania kópia Oracle možno rozdeliť na logické a fyzické. Logickým zálohovaním (logickým zálohovaním) sa rozumie vytváranie záloh pomocou utility Data Pump Export, ktoré obsahujú logické objekty ako tabuľky a procedúry. Tieto zálohy sú uložené v špeciálnom binárnom formáte a je možné ich získať iba pomocou pomôcky Data Pump Import.

Fyzická záloha sa týka vytvárania záložných kópií kľúčové súbory databázy Oracle, t.j. dátové súbory, archivované redo log súbory a kontrolné súbory. Tieto zálohy je možné uložiť na diskové aj páskové jednotky.

Úrovne zálohovania

Nasledujú úrovne, na ktorých je možné zálohovať databázy Oracle:

  • Celá úroveň databázy. Táto úroveň znamená, že sú zálohované všetky súbory vrátane riadiaceho súboru. Zálohovanie celej databázy môžete vykonávať v režime ARCHIVELOG aj v režime NOARCHIVELOG.
  • Úroveň tabuľkového priestoru. Táto úroveň znamená, že všetky dátové súbory patriace do konkrétneho tabuľkového priestoru sú zálohované. Zálohovanie na tejto úrovni je povolené iba vtedy, ak sa používa režim ARCHIVELOG.
  • Úroveň dátového súboru. Táto úroveň zahŕňa zálohovanie jedného dátového súboru. Zálohovanie na tejto úrovni je povolené iba vtedy, ak sa používa režim ARCHIVELOG.

Oracle Database ukladá všetky súbory vytvorenej databázy do dátových súborov. Aj keď sú všetky dáta logicky obsiahnuté v tabuľkových priestoroch, v skutočnosti ide o obsah súborov na pevnom disku počítača. Každá tabuľka databázy je teda uložená ako riadky konkrétny súborúdajov. Na obnovenie údajov konkrétnej databázy často stačí obnoviť jej dátové súbory a importovať ich do databázy Oracle.

Oracle Database Structure

Počas prevádzky inštancia databázy Oracle používa niekoľko skupín súborov, ktoré by sa mali zálohovať na neskoršie obnovenie. toto:

    Dátové a tabuľkové súbory (*.DBF).

    Názvy dátových súborov a tabuľkových priestorov, ako aj cesty k nim, je možné zobraziť pomocou SQL Plus, ak spustíte nasledujúci dotaz:

    SELECT t.name "Tablespace", f.name "Datafile" FROM v$tablespace t, v$datafile f WHERE t.ts# = f.ts# ORDER BY t.name;

    Konfiguračné súbory databázy (*.ora).

    Konfiguračné súbory databázy Oracle majú príponu *.ora a nachádzajú sa v priečinku:


    Riadiace súbory databázy (*.DBF).

    Najjednoduchší spôsob, ako určiť cestu a názvy riadiacich súborov, je nájsť v konfiguračný súbor*.ORA reťazec control_files, ktorý zobrazí zoznam riadiacich súborov používaných touto inštanciou.


    Ak chcete určiť názvy a cesty k riadiacim súborom v SQL*Plus, musíte spustiť dotaz:

    SELECT hodnotu FROM v$parameter WHERE meno = 'control_files';

    Súbory denníka transakcií (*.LOG).

    Ak chcete zistiť názvy online protokolov transakcií a ich cesty, musíte v SQL Plus spustiť nasledujúci dotaz:

    SELECT člena FROM v$logfile;

    Výsledkom tohto dopytu bude takýto prehľad:


    Ak chcete určiť cesty k priečinkom, v ktorých sú uložené archivované protokoly transakcií, musíte spustiť nasledujúci dotaz:

    SELECT cieľ FROM v$archive_dest kde status='PLATNÉ';

    Výsledkom tohto dopytu bude prehľad:


  • Súbor hesla (*.ora).

    Spravidla ide o súbory s príponou *.ora, ktorých názov začína znakmi PWD.

    Napríklad: PWDXE.ora

Ak teda chcete uložiť, archivovať alebo zálohovať databázu Oracle, kópiu určené skupiny mali by sa vytvoriť súbory a toto:

  • *.DBF– dátové súbory, tabuľkové priestory a riadiace súbory databáz. Nachádza sa:
    C:\oraclexe\app\oracle\oradata\XE
  • *.ora– konfiguračné súbory databázy a súbory hesiel.
    Konfiguračné súbory:
    C:\oraclexe\app\oracle\product\11.2.0\server\dbs
    Súbory hesiel (PW…ora):
    C:\oraclex\app\oracle\product\11.2.0\server\database
  • *.LOG– súbory protokolu transakcií:
    C:\oraclexe\app\oracle\fast_recovery_area\XE\ONLINELOG
kde XE je v našom prípade názov databázy.

Zálohovanie databázy Oracle

Databázu Oracle (zálohovanie) môžete zálohovať dvoma spôsobmi:

Archivácia pomocou operačného systému

Archivácia pomocou operačného systému znamená „ručné“ skopírovanie všetkých pracovných súborov databázy Oracle, ako napríklad:

  • Súbory tabuľkového priestoru.
  • kontrolné súbory.
  • Súbory denníka transakcií.
  • Konfiguračné súbory.

V tomto prípade proces archivácie pozostáva z jednoduchého skopírovania riadiacich súborov, súborov tabuľkového priestoru, konfiguračných súborov, archivovaných protokolov transakcií do záložného adresára alebo do záložný server. Archivácia sa vykonáva, keď je inštancia databázy zastavená a užívatelia s ňou nemôžu pracovať.

Ak chcete obnoviť databázu poškodenú haváriou, musíte ju zastaviť a záložné kópie pracovných súborov a protokolov transakcií prepísať na pôvodné miesto.

Zálohovanie a obnovenie pomocou nástrojov Export / Import

Databázu Oracle môžete zálohovať a obnovovať pomocou štandardných mechanizmov exportu a importu Oracle. Pre zvýšenie spoľahlivosti bezpečnosti dát je potrebné periodicky, v závislosti od náročnosti práce s databázou, vykonávať úplný export. Pri pomerne intenzívnej zmene údajov je potrebné exportovať raz týždenne.

Pre to:


Import súboru vytvoreného skôr v archíve sa vykonáva podobným spôsobom:


Obnova stratenej databázy Oracle

Ak sa databáza Oracle z akéhokoľvek dôvodu odstráni alebo stratí, možno ju obnoviť obnovením súborov pomocou Hetman Obnovenie partície a obnovte ich pomocou metódy opísanej v časti "Archivácia pomocou operačného systému".

Pre to:


Napríklad pri obnove databázových súborov je popísaný proces obnovy *.DBF súborov. Majte však na pamäti, že na obnovenie všetkých údajov zdravej databázy je potrebné obnoviť aj príslušné súbory *.ORA a *.LOG.

Zálohovanie a obnova databázy pomocou Oracle Recovery Manager (RMAN)

Oracle Recovery Manager (RMAN) je ďalší nástroj na zálohovanie databázy Oracle. Od ostatných nástrojov sa líši tým, že vytvára kompletnú kópiu celej databázy, nielen údajov z nej. A čo je dôležité, Oracle Recovery Manager kombinuje funkčnosť príkazového riadku SQL a zároveň oslobodzuje používateľa od úplná závislosť z jej príkazov. Nainštalované tento nástroj do počítača súčasne a spolu s inštalácia Oracle databázy.

Na vytvorenie zálohovanie základne s RMAN:


Ak chcete obnoviť databázu zo zálohy databázy pomocou Oracle Recovery Manager (RMAN):


Mimochodom, v prípade straty alebo vymazania záložného súboru databázy Oracle, *.BKP Záložný súbor je možné obnoviť aj pomocou Hetmanova priečka zotavenie a potom ho obnovte v databáze pomocou nástroja Oracle Recovery Manager (RMAN), ako je popísané vyššie.

Operácie zálohovania a obnovy v Oracle možno rozdeliť do troch typov:

1. Logická záloha – vykonáva sa pomocou priloženého Nástroje Oracle exp, ktorý umožňuje exportovať celú databázu, dané schémy alebo tabuľky. V prípade exportu celej databázy sa vykoná takzvaný úplný export (exportujú sa všetky tabuľky databázy) alebo prírastkový (vyložia sa tabuľky, ktoré sa od posledného exportu zmenili). Pre Oracle 10g XE, v ktorom veľkosť databázy nepresahuje 4 GB, môžete využiť plný export.

2. Fyzická záloha – vykonáva sa po inštalácii základne a zahŕňa skopírovanie dátových súborov, riadiacich súborov, online redo logov a súboru init.ora so základnými nastaveniami.

3. Online zálohovanie - prebieha v databáze pracujúcej v režime ARCHIVELOG. Tento režim archivuje online protokoly opakovania a zaznamenáva všetky transakcie.

Pre malé školiace databázy je najjednoduchšia a najspoľahlivejšia plná logická záloha a fyzická záloha. Logické zálohovanie sa vykonáva pomocou pomôcky exp.exe, ktorá sa nachádza v priečinku oraclexe\app\oracle\product\10.2.0\server\BIN\. Pomôcka je konzolová aplikácia, ktorá prijíma parametre cez príkazový riadok. Keďže parametrov je zvyčajne veľa (5-10 kusov), je vhodné vytvoriť profil s parametrami a následne ho odovzdať exportnej utilite pomocou parametra parfile.

Zvážte príklad typických profilov. Na začiatok poďme vyriešiť najbežnejšiu úlohu - vytvorenie záložnej kópie jednej alebo viacerých schém. Ako príklad zvážte skopírovanie schémy STUDENT s prípadovou štúdiou. Ak to chcete urobiť, vytvorte textový súbor exp_stud.prm obsahujúci nasledujúce riadky:

USERID = používateľské meno/heslo
LOG = oralOstud.log FILE = oralOstud.dmp 0WNER= STUDENT

Následne vykonáme export spustením príkazu exp parfile=exp_stud.prm, čím sa vytvorí súbor ora10stud.dmp obsahujúci záložnú kópiu schémy STUDENT. Tento súbor má binárny formát a je veľmi dobre komprimovaný akýmkoľvek archivátorom, preto na automatizáciu postupu zálohovania je vhodné vytvoriť súbor BAT obsahujúci príkaz export a zavolať archivátor na kompresiu výsledného výpisu.

V našom prípade parameter USERID obsahuje meno a heslo pre prístup k databáze, parameter LOG určuje názov súboru, do ktorého sa zapisuje prevádzkový protokol, parameter FILE určuje názov súboru zálohy, OWNER - jeden alebo viac exportované schémy (ak je špecifikovaných niekoľko schém, oddeľujú sa čiarkami).

Ak chcete vykonať úplný export, profil sa mierne zmení:

USERID = používateľské meno/heslo
LOG=oralOfull.log FILE=oralOfull.dmp FULL=Y

Dôležitým bodom je, že môžete exportovať konkrétnu schému v mene jej vlastníka, ale pre úplný export musíte mať rolu DBA, inak pokus o úplný export zlyhá s chybou EXP-00023 so správou „Musí to byť DBA vykonať export celej databázy alebo tabuľkového priestoru“. Veľkosť výpisu pre úplný export prázdnej databázy Oracle 10g XE je 43 MB (9 MB po kompresii WinRar). Dôrazne sa odporúča vykonávať pravidelné zálohy aj na výcviková základňa- Známe sú desiatky a stovky prípadov, keď sa v priebehu štúdia Oracle poškodí databáza, vymaže sa používateľ alebo iná operácia vedie k strate vytvorených objektov.

Logický import je zrkadlovou operáciou k exportu a vykonáva sa pomocou pomôcky IMP. Počas importu nie je potrebné importovať všetky informácie vo výpise - môžete importovať zadané schémy alebo tabuľky. Je vhodné umiestniť parametre pomôcky IMP do profilov, napríklad na import schémy STUDENT môžete použiť nasledujúci profil:

USERID = študent/študent LOG = oralOstudimp.log FILE = oralOstud.dmp
RADY = Y
GRANTY=Y
INDEXY = Y
FR0MUSER= ŠTUDENT
T0USER=ŠTUDENT

Parameter FROMUSER určuje, z ktorých účtov sa informácie prevezmú do výpisu, a TOUSER určuje, do ktorých účtov sa budú importovať. Toto je veľmi užitočná funkcia nástroja na import, pretože vám umožňuje importovať údaje z jednej schémy do druhej.

Parametre ROWS (riadky tabuľky), GRANTS (oprávnenia na objekty), INDEXES (indexy) označujú, ktoré typy objektov sa importujú.

Zvážte niekoľko typických situácií, ktoré sa vyskytujú v praxi:

je potrebné importovať objekty účtu STUDENT do účtuŠTUDENT1. V tomto prípade by ste mali nastaviť parametre FROMUSER=ŠTUDENT a TOUSER=ŠTUDENT1;

Pred importovaním musíte odstrániť všetky objekty zo schémy, inak proces importu vygeneruje chyby IMP-00015 pre každú importovanú tabuľku (údaje sa v tomto prípade neimportujú). Ak z nejakého dôvodu potrebujete načítať údaje do existujúcej tabuľky, môžete použiť parameter IGNORE=Y. čo spôsobí, že chyby pri vytváraní objektu budú ignorované a import údajov bude pokračovať. Ak však použijete parameter IGNORE=Y, musíte si uvedomiť, že v tabuľkách bez primárneho kľúča môže dôjsť k zdvojnásobeniu záznamov (pretože každá operácia importu načítava nové dáta, pričom staré dáta nie sú zničené).

IMP má jednu zaujímavú vlastnosť – namiesto vykonávania príkazov v databáze ich tento nástroj vydáva do protokolu, čím generuje skripty obsahujúce príkazy DML. Ak chcete povoliť túto funkciu, musíte zadať parameter SHOW=Y.

Zálohujte si dáta základne Oracle možno vykonať dvoma spôsobmi:

  • Používanie operačného systému.
  • Používanie nástrojov samotnej databázy.

Každá z týchto metód má výhody a nevýhody. V prípade vytvárania záložnej kópie pomocou operačného systému je potrebné, aby bola inštancia počas celého procesu vytvárania záložnej kópie zastavená, aby sa predišlo nekonzistentnosti údajov, ktorá je neprijateľná, ak systém potrebuje fungovať 24/7 režim. Druhým hlavným nedostatkom je zložitosť administrácie veľkého množstva záloh a pracnosť ich kontroly na chyby.

Použitím databázových utilít sa týmto nevýhodám možno vyhnúť, no objavujú sa ďalšie nevýhody, zložitosť prispôsobenia a vlastná syntax príkazov.

Zabudované nástroje na zálohovanie databázy sú primárne exp a expdp, ktoré vám umožňujú vytvoriť logickú zálohu (t. j. kópiu databázového objektu). Tento spôsob vytvárania zálohy je jednoduchý a jeho hlavnou nevýhodou je čas potrebný na obnovenie z kópie v prípade potreby preinštalovania inštancie a možnosť obnoviť objekt len ​​v konkrétnom momente zálohy.

Najmocnejší, stvorený podľa orákulašpeciálne na vytváranie záloh databáz je nástroj RMAN. Čo vám umožňuje vytvoriť úplnú kópiu databázy bez zastavenia inštancie a obnoviť ju do ľubovoľného bodu v minulosti, sám monitoruje zastarané kópie a v prípade potreby ich vymaže a tiež ich kontroluje na chyby. Ale zároveň má vážnu nevýhodu - je ťažké ho nakonfigurovať a spravovať. Pozrime sa bližšie na konfiguráciu a správu tohto nástroja.

Pomôcka RMAN sa objavila vo verzii 8g av ďalších verziách bola vylepšená. Nastavme tento nástroj na vytváranie pravidelných záloh našej databázy.

V prvom rade musíte pochopiť, z čoho databáza pozostáva, a rozhodnúť sa, ako často potrebujete vytvárať záložnú kópiu. V našom prípade je to databáza Oracle a pozostáva z nasledujúcich súborov:

  • tabuľkové priestory;
  • kontrolné súbory;
  • prerobiť denníky;
  • dátové súbory (init.ora, spfile, tnsnames.ora, listener.ora, orapwd);

Po výbere dát na uloženie určíme stratégiu kopírovania, konkrétne zvolíme frekvenciu, typ vytváraných záloh a čas ich uloženia. Zálohy sú inkrementálne plné – teda úplne skopírovaný súbor, inkrementálne kumulatívne – keď kópia obsahuje iba rozdiel v údajoch medzi aktuálnym stavom a stavom v čase poslednej inkrementálnej zálohy, a inkrementálne rozdielové – takéto kópie obsahujú rozdiel medzi aktuálnym stavom a stavom v čase poslednej zálohy. Voľba stratégie je určená režimom prevádzky databázy, ak ide o databázu s častými zmenami, potom je žiaduce robiť inkrementálne častejšie. úplné kópie to vám umožní rýchlo obnoviť databázu po zlyhaní, pretože. nemusí vykonávať veľké množstvo transakcií. Ak sa táto databáza používa hlavne na ukladanie a čítanie, potom sa prírastkové kópie môžu vytvárať zriedkavo a môžu sa obmedziť na bežné kumulatívne kópie.

Naša databáza sa používa hlavne na ukladanie a v priebehu času sa mení len málo, preto zvolíme nasledujúcu stratégiu: vytváranie prírastkovej kópie raz týždenne 3 noci v nedeľu a vytváranie kumulatívnych kópií každú noc o 3 hodinách, čo nám umožní rýchlo obnoviť databázu bez toho, aby zaberala veľa miesta na disku s použitím maximálne 2 kópií.

Potom, čo sme sa rozhodli, čo kopírovať a ako často môžeme pristúpiť k nastaveniu inštancie databázy. V prvom rade by ste sa mali uistiť, že databáza funguje v režime archivácie redo logov (archivelog), môžete si to overiť dotazom:

Vyberte log_mode z databázy v$; od ľubovoľného používateľa s právami sysdba. Ak žiadosť vrátila archivelog, potom je všetko v poriadku, prejdite na ďalší krok, ak noarchivelog, musíte reštartovať databázu v režime archívu. Ak to chcete urobiť, musíte reštartovať databázu v režime príkaz mount:
okamžite pripojte štart a spustite príkaz
zmeniť archív databázy; aktivuje režim archívu, potom zostáva len otvoriť databázu príkazom:
zmeniť databázu otvoriť;

Uchovávanie kópií opakovaných protokolov je nevyhnutné na vytvorenie konzistentných prírastkových horúcich kópií databázy a na to, aby bolo možné obnoviť stav databázy do akéhokoľvek bodu v minulosti.

Po prepnutí databázy do režimu archivácie musíme pre ňu nastaviť parametre oblasti dávkovej obnovy. Skontrolujeme, či sú už nastavené požiadavkou:

Vyberte názov, hodnotu z parametra v$, kde názov ako "db_recovery_file_dest%"; ak nie je nastavené, nastavte príkazy:
zmeniť systémovú sadu db_recovery_file_dest_size=50G rozsah=oboje; súpravy maximálna veľkosť oblasti obnovy šarže a
alter system set db_recovery_file_dest="/storage/recovery_area" scope=obaja; určuje umiestnenie oblasti obnovy dávky v systém súborov. Vytvorenie oblasti dávkového obnovenia je nevyhnutné, aby sa rman mohol vymazať zastarané kópie, ako aj sledovať zostávajúce voľné miesto na disku a upozorniť, ak nezostane dostatok.

Po nastavení inštancie môžete pristúpiť k nastaveniu samotného nástroja rman pripojením k rman pomocou sekvencie príkazov

Rman pripojiť cieľový používateľ/ [e-mail chránený] vykonať príkaz
ukázať všetko;

v prvom rade nakonfigurujeme parametre úložiska záloh, a to buď parametrom KONFIGURÁCIA POLITIKY UCHOVÁVANIA, alebo sa nastaví počet kópií, ktoré sa súčasne ukladajú, alebo sa určí obdobie, v ktorom sa kópia považuje za relevantnú. Nastavte parameter okna obnovy na 7 dní pomocou príkazu:

KONFIGURUJTE ZÁSADY UCHOVÁVANIA DO OKNA OBNOVENIA 7 DNÍ; povoliť automatické zálohovanie riadiaceho súboru pri každom vytvorení zálohy sa vytvorí kópia riadiaceho súboru:
CONFIGURE CONTROLFILE AUTOBACKUP ON; aktivujte optimalizáciu, aby rman nevytváral kópie súborov, už existujú záložné kópie identické s existujúcou:
KONFIGURÁCIA OPTIMALIZÁCIE ZÁLOHY ZAPNUTÁ; a paralelizovať proces vytvárania záložnej kópie do 2 kanálov:
KONFIGURÁCIA TYPU DISKU PARALELIZMUS 2; Nebudeme meniť parametre zariadenia, na ktorom sú informácie uložené, šifrovanie, kompresiu, formát automatického zálohovania riadiaceho súboru a maximálnu veľkosť kopírovaného súboru.

Po tomto nastavení ostáva už len vytvárať v operačný systém runtime súbory pre rman a pridajte ich do plánovača úloh.

Za vzkriesenie:

#!/bin/bash export ORACLE_HOME=/u01/11g/ export NLS_LANG=american_america.AL32UTF8 export ORACLE_SID=kagu1251 rman pripojiť cieľového užívateľa/prejsť BACKUP INCREMENTAL LEVEL 0 DATABASE; ZÁLOŽNÝ ÚDAJOVÝ SÚBOR "/oradata/db/admin/kagu/pfile/init.ora.6302012163819"; ZÁLOŽNÝ ÚDAJOVÝ SÚBOR "/u01/11g/network/admin/listener.ora"; ZÁLOŽNÝ ÚDAJOVÝ SÚBOR "/u01/11g/network/admin/tnsnames.ora"; ZÁLOŽNÝ ÚDAJOVÝ SÚBOR "/u01/11g/dbs/spfilekagu.ora"; ZÁLOŽNÝ ÚDAJOVÝ SÚBOR "/u01/11g/dbs/orapwkagu1251";

Pre ostatné dni:

#!/bin/bash export ORACLE_HOME=/u01/11g/ export NLS_LANG=american_america.AL32UTF8 export ORACLE_SID=kagu1251 rman pripojiť cieľového používateľa/prejsť ZÁLOHU PRÍSTUPNEJ DATABÁZY 1. ÚROVNE; ZÁLOŽNÝ ÚDAJOVÝ SÚBOR "/oradata/db/admin/kagu/pfile/init.ora.6302012163819"; ZÁLOŽNÝ ÚDAJOVÝ SÚBOR "/u01/11g/network/admin/listener.ora"; ZÁLOŽNÝ ÚDAJOVÝ SÚBOR "/u01/11g/network/admin/tnsnames.ora"; ZÁLOŽNÝ ÚDAJOVÝ SÚBOR "/u01/11g/dbs/spfilekagu.ora"; ZÁLOŽNÝ ÚDAJOVÝ SÚBOR "/u01/11g/dbs/orapwkagu1251";

Na obnovu celej databázy po ich úplnom zmiznutí slúži príkaz RESTORE DATABASE, po jeho vykonaní je potrebné synchronizovať dáta pomocou archívnych logov príkazom RECOVER DATABASE, obnova prebieha v režime pripojenia.

Ak chcete obnoviť konkrétny tabuľkový priestor, musíte ho najskôr prepnúť do režimu OFFLINE pomocou príkazu:

Používateľ ALTER TABLESPACE OFFLINE;

Potom ho obnovte a synchronizujte:

OBNOVIŤ používateľa TABLESPACE; RECOVER TABLESPACE užívateľa; Po dokončení ho preneste do online režimu príkazom:
Používateľ ALTER TABLESPACE ONLINE;

Môžete tiež vrátiť databázu späť na určitý moment pred časom sa príkaz vykoná:

NASTAVENÉ DO ČASU "29. januára 2013 20:00:00";

Toto obnovenie sa musí vykonať, keď je databáza v režime pripojenia a pri otváraní zadajte možnosť RESETLOGS, aby sa nevykonali zmeny uložené v protokoloch opakovania vytvorených po bode obnovenia.

Na sledovanie vytvorených záloh je vhodný príkaz CROSSCHEK, ktorý umožňuje kontrolovať prítomnosť záloh v oblasti dávkovej obnovy a možnosť prístupu k nim. Na testovanie záložných súborov na logické resp fyzické chyby použije sa príkaz VALIDATE.