Concepte de backup și restaurare a bazei de date Oracle pentru un sistem ERP & CRM

Date: 03-03-2014
Author: Bit Software

Startegie de backup baze de date-ERP software-CRM software-BI software.png

 

Este în general recunoscut faptul că planificarea continuităţii activităţii în caz de dezastru este o activitate vitală, dar destul de rar

implementată în sistemele IT medii şi mici din România. Înainte de crearea planului în sine, este esenţial să se ia în considerare efectele

potenţiale ale dezastrelor şi riscurile asociate. Acestea sunt bazele pe care ar trebui să fie construit planul de continuitate sau de

refacere în caz de dezastru. Planul în sine trebuie să fie întreținut, testat şi verificat, pentru a avea certitudinea că acesta rămâne adecvat

nevoilor organizației.

Departamentul IT trebuie să stabilească împreună cu conducerea firmei cele două valori de referință pentru orice plan de refacere în caz de dezastru:

  • RPO - Recovery Point Objective

    • reprezintă cantitatea maximă de informaţie care este acceptabil să fie pierdută, exprimată în unități de timp

  • RTO - Recovery Time Objective

    • reprezintă intervalul maxim de timp scurs de la declanşarea incidentului până la momentul în care sistemul redevine funcţional

    • dacă acest obiectiv este depăşit activitatea începe să fie grav afectată

Revenind la tema noastră, un sistem ERP & CRM îşi păstrează datele şi configurările în bazele de date, iar recuperarea sistemului la o stare anterior funcţională, se reduce la politica de recuperare a bazelor de date asociate.

Un rol important în activitatea curentă a unui administrator de baze de date este să elaboreze și implementeze o strategie care să permită salvarea, arhivarea și recuperarea datelor cât mai eficientă, rapidă și sigură.

O strategie bună de backup și restaure a bazei de date poate preveni:

  • pierderea de date în cazul în care apare imposibilitatea accesării bazei de date în urma coruperii unui fișier sau a unui grup de fișiere;

  • pierderea anumitor funcționalități specifice în cazul trecerii la versiuni noi ale aplicațiilor care folosesc baza de date Oracle sau a unei versiuni noi de bază de date;

  • pierderea de date în cazul următoarelor operațiuni: import de date, funcționalităti noi apărute în aplicație, greșeli de operare ale utilizatorilor;

  • pierderea bazei de date în cazul în care serverul este indisponibil datorită anumitor factori externi : întreruperi de curent, incendii, inundații.

 

Concepte de Backup si Restaurare a bazei de date Oracle

1. Backup cu baza de date pornită:

  • este recomandat să fie folosit în mediul de producție, asigură o pierdere de date cât mai mică;

  • nu necesită oprirea bazei de date, utilizatorii nu sunt afectați de această operațiune;

  • este posibil numai în cazul în care baza de date este configurată în modul ARCHIVELOG (după restaurarea ultimului backup se pot aplica, în ordine cronologică toate logurile existente);

  • în această configurație trebuie monitorizat spațiul disponibil pe disc. În cazul în care spațiul rezervat pentru Fast Recovery Area nu este suficient de mare, umplerea acestuia poate duce la oprirea server-ului de Oracle.

2. Backup cu baza de date oprită:

  • permite recuperarea numai a datelor din ultimul backup, nu permite salvarea datelor modificate între cele două backup-uri;

  • baza de date trebuie sa fie oprită, utilizatorii nu se pot conecta la baza date. Toate conexiunile active sunt întrerupte în timpul acestei operațiuni;

  • este folosit în cazul în care baza de date este trecută în modul NO ARCHIVELOG;

În ambele variante de backup de mai sus (cu baza pornită sau cu baza oprită) există posibilitatea efectuării următoarelor tipuri de backup:

a. Backup full al bazei de date (se face un backup integral al bazei de date);

b. Backup incremental (parțial) al bazei de date :

  • acesta se poate face numai după ce s-a facut un backup full al bazei de date;

  • se poate face un backup cumulativ, se salvează toate operațiunile efectuate între momentul execuției ultimului backup full sau increment (parțial) și momentul actual;

  • se poate face un backup diferențial, se salvează numai modificările efectuate între momentul execuției ultimului backup full sau increment (parțial) și momentul actual;

  • se folosește în cazul în care baza de date este foarte mare, iar pentru execuția unui backup al întregii baze de date consumul de resurse este foarte mare;

Operațiunea de backup se poate face folosind aplicația RMAN sau prin crearea unor job-uri din consola Oracle.

Restaurarea bazei de date Oracle

  • se poate face numai în cazul în care pe server-ul pe care se restaurează baza de date este aceeași structură ințială de fișiere din momentul creării backup-ului;

  • se poate face numai pe aceeași versiune de bază de date;

  • odată cu restaurarea datelor sunt refăcuți toți parametri Oracle;

  • nu permite restaurarea unei anumite scheme, se restaurează integral baza de date;

  • permite refacerea unor fișiere din structura bazei de date.

 

Exportul/importul unei scheme Oracle

  • este o metodă prin care se exportă: structura tabelelor, relațiile între tabele, indecșii și datele existente pe o anumită schemă Oracle;

  • exportul de schemă poate permite includerea respectiv excluderea anumitor obiecte din schema Oracle : tabele, view-uri, funcții;

  • este o metodă flexibilă prin care se pot muta datele pe o altă schemă, pe un alt server Oracle, chiar pe o altă versiune de Oracle;

  • în cazul în care trebuie refăcut server-ul de Oracle, baza de date trebuie creată în prealabil, trebuie refăcuți parametri de Oracle;

  • este o metodă complementară prin care se poate asigura backup-ul datelor, se poate folosi în paralel cu backup-ul bazei de date Oracle;

  • exportul respectiv importul schemei Oracle nu necesită oprirea bazei de date, se poate face când baza de date este trecută în ARCHIVELOG sau NO ARCHIVELOG;

Mutarea datelor pe un alt server

Pentru mutarea datelor de pe un server Oracle pe altul, se pot folosi mai multe metode:

1. Se poate folosi un backup de Oracle full care să fie restaurat pe un alt server de Oracle. În acest caz server-ul pe care se va restaura baza de date trebuie sa aibă o structură de directoare identică cu server-ul sursă, să aibă aceeași versiune de Oracle cu server-ul sursă. Odată cu restaurarea bazei de date vor fi preluați și parametri Oracle de pe server-ul sursă.

2. Se poate folosi un export al schemei Oracle, În acest caz se pot muta datele pe o altă platformă, de exemplu, se pot exporta datele de pe un server de Linux și importa pe un server pe care este instalat Windows. În cazul în care se folosește parametrul de compatibilitate, se pot muta datele pe un server pe care este instalată altă versiune Oracle.

3. Duplicarea bazei de date folosind aplicația RMAN. Cele două servere trebuie să aibă aceeași structură, versiune și platformă. Folosind această metodă nu mai trebuie copiate fișierele de backup pe server-ul pe care se face duplicarea bazei de date.

Concluzii

În cazul unei baze de date de producție trebuie avut în vedere faptul că dacă baza de date este trecută în modul ARCHIVELOG acest lucru permite o recuperare a datelor cât mai apropiată de momentul în care a apărut un incident în baza de date. Este recomandat ca fișierele rezultate în urma backup-ului bazei de date să fie salvate pe un dispozitiv de stocare extern server-ului pe care este instalată baza de date: un HDD extern, un server dedicat pentru stocarea de date, etc. Pentru salvarea datelor se poate implementa un backup al bazei de date Oracle, iar în paralel poate fi programat un job care să facă exportul schemei de producție.

 

Autor: Ciprian Bogoiu - Consultant tehnic - BITSoftware

 

Află mai multe despre ERP & CRM & BI