Oracle mișcare partiționarea operativă și restaurarea datelor istorice, tabelul Oracle

1. Introducere

La soluționarea problemei de stocare și care oferă acces la datele istorice este de multe ori problema apare de datele de încărcare arhivate pe un suport de backup (cum ar fi banda), cu posibilitatea de recuperare precoce a acestor informații și punerea lor la dispoziția utilizatorilor. Această problemă este deosebit de relevant pentru stocarea de date, dar pot fi utilizate și pentru procesarea de date istorice OLTP-sisteme.

Acest articol descrie o modalitate de a rezolva această problemă prin utilizarea Separare Oracle opțiuni de baze de date baze de date.

Abordarea Ilustrația date istorice muta

Primul pas este de a defini secțiunile care conțin date istorice. Date istorice - acestea sunt date istorice, pe care, în viitor, nu va desfășura operațiuni modificări. Apoi, secțiunea care conține date istorice sunt mutate în tabelul temporar pregătit în prealabil. Următorul pas este produs pentru metadate de export Transport Table Space (TTS). La sfârșitul transferului de fișiere se face cu metadatele fișierului și spațiul de tabelă pe suportul de rezervă.

Abordarea descrisă a fost adoptată ca bază pentru sarcinile mișcării și restaurarea datelor istorice „Rostelecom“ depozit companiei datele companiei.

2. Determinarea datelor istorice

Pentru a identifica datele istorice, adică tipul de date care nu vor mai fi schimbat, administratorul trebuie să fie monitorizate pe o bază lunară de aspectul lor. Lista de informații care ar trebui să fie recunoscute ca istoric, să definească cerințe de afaceri. De multe ori regula pentru datele istorice se reduce la o astfel de condiție recunoscută ca istoric perioada de păstrare a datelor din care depășește o anumită limită, de exemplu, 5 ani de acum încolo.

Pentru a automatiza identificarea datelor istorice într-un tabel de fapt specifice, puteți face următoarea interogare (referința la Oracle Database dicționar):

Această interogare va returna o listă de secțiuni (a se vedea. Câmpul partition_name), în conformitate cu tabelele, datele care sunt istorice (termen de valabilitate mai mare de 5 ani). Aceste date ar trebui să fie susținute și sa mutat la mass-media de rezervă.

3. Mutați datele istorice

tehnologie spațiile de tabelă mobile (transportabil Tablespace) vor fi utilizate pentru a muta secțiunea tabelului cu datele istorice. Următoarele acțiuni ar trebui întreprinse pentru a muta spațiile de tabelă:

  1. Crearea unui tabel temporar. care va fi mutat la datele istorice.
  2. Mutare la o serie de date tablitsuistoricheskie temporare prin modificarea secțiunilor (partiție de schimb).
  3. Eliminați tot spațiul tabelă conexiune logică și fizică și secțiunea de masă cu toate obiectele cu excepția unui tabel temporar.
  4. Asigurați-TABLESPACE numai de citire (numai citire).
  5. Face secțiunea metadate de export cu spațiu de tabelă de date istorice (pentru executarea cu succes a exportului și importului, utilizatorul trebuie, de sub care pentru a efectua aceste operațiuni, au drepturile și exp_full_database imp_full_database, respectiv).
  6. Copiați fișierul cu fișierele de metadate și date pentru spațiu de tabele cu date istorice în dosarul de transfer la mass-media de rezervă.
  7. Asigurați-vă arhiva pentru a include: fișier cu metadate, fișierele tablespace. fișierului de descriere suplimentară.
  8. Scoateți spațiul tabelă cu datele istorice din baza de date.

Mai jos este o secvență de acțiuni privind circulația datelor istorice din secțiunea P_0106 APELURI de masă.

Date secțiunea P_0106 sunt stocate într-un spațiu tabelă TBS_CALLS_0106_1, care, la rândul său, este format din două fișiere: TBS_CALLS_0106_1_001.dbf și TBS_CALLS_0106_1_002.dbf.

Mai jos, toate script-urile sunt executate din sistemul utilizatorului.

4. Crearea unui tabel temporar

Crearea unui tabel temporar. care se deplasează ulterior secțiunea cu datele istorice.

5. Mutați datele din tabelul temporar

Executați secțiunea schimbare de comandă (schimb paertition) P_0106 (secțiune cu date istorice) între tabelul APELURI și tabelul temporar SOLICITĂ $ EXP $ P_0106.

6. Eliminați linkuri

Face spațiu tabelă metadate export numai în cazul în care nu este asociat cu alte obiecte de baze de date.

Pentru a verifica conexiunile, efectuați următoarea procedură, și interogare (ele trebuie să efectueze în conformitate cu utilizatorul SYS):

În cazul în care cererea este depusă la TRANSPORT_SET_VIOLATIONS returnează înregistrări, aceasta înseamnă că această secțiune link-uri cu alte obiecte de bază de date există. Este necesar ca o cerere de această reprezentare nu se întoarce linii. Pentru a face acest lucru, trebuie să modificați spațiul de tabelă pentru P_0106 partiție APELURI de masă - muta un spațiu TBS_CALLS_0106_HIST tabelă de partiții și să se deplaseze metadatele de masă SOLICITĂ $ EXP $ P_0106 tabelul spațiu TBS_CALLS_0106_1:

Controale pentru relația din nou.

De TRANSPORT_SET_VIOLATIONS depunerea înregistrările disponibile - fără relații.

7. Atributul "read only"

metadate de export pentru a face spațiul de tabelă este posibilă numai atunci când este în modul „read-only“. Asigurați-vă spațiul de tabelă este numai pentru citire rulând următoarea comandă:

8. Export spațiul de tabelă

Realizăm exportul de spațiu tabelă metadate. Pentru aceasta tehnologie DataPump și, în consecință, instrument expdp va fi utilizat.

În linia de comandă, trebuie să exportați comanda (a se vedea script -. Export.sh) în directorul definit în DATA_PUMP_DIR bază de date variabilă.

Du-te la directorul, care definește DATA_PUMP_DIR variabilă.

Copiați fișierul cu baza de date fișierele de date TBS_CALLS_0106_1.DMP TBS_CALLS_0106_1_001.dbf metadate și, TBS_CALLS_0106_1_002.dbf la directorul / backup / DWH / TBS_CALLS_0106_1_HIST, concepute pentru a stoca temporar fișiere înainte de transfer de la mass-media de rezervă. Pre TBS_CALLS_0106_1_HIST nevoie pentru a crea un director în / de rezervă / DWH /.

Se recomandă pentru a crea un fișier text /backup/DWH/TBS_CALLS_0106_1.txt care descriu locația fișierelor de date exportate spațiu tabelă. Și apoi să includă acest fișier text la arhivă.

Pentru a crea un fișier de descriere, puteți efectua următoarele acțiuni (în sistemul de operare Unix):

  • Creați un fișier: atingeți TBS_CALLS_0106_1.txt.
  • Deschideți fișierul pentru editare: pisica> TBS_CALLS_0306_1.txt.
  • Pentru fișierul text.
  • Prin editarea fișierului de finalizare presă Cntr + D.

10. Crearea unei arhive

Să creeze o arhivă cu directorul TBS_CDR_0306_1_HIST conținutul folosind utilitarul tar. Această arhivă, apoi, și va fi mutat la mass-media de rezervă.

Arhiva creat. Puteți șterge acum datele istorice din tabelul bazei de date.

11. Eliminarea TABLESPACE

Eliminați spațiul tabelă TBS_CALLS_0106_1

Împreună cu TBS_CALLS_0106_1 spațiu tabelă șters și tabelul temporar SOLICITĂ $ EXP $ P_0106.

Pentru a facilita și mai mult procesul de recuperare în tabelul de date (în acest exemplu, APELURI de masă) secțiune, care a fost datele istorice, este mai bine să plece.

12. Restaurarea datelor istorice

Pentru a restaura datele istorice din arhiva, utilizați următorii pași:

  1. Copiați arhiva cu datele istorice din mass-media de rezervă într-un director de recuperare.
  2. Despachetați arhiva.
  3. Copiați fișierul cu metadatele în dosarul de recuperare de date și fișierele din directorul (sau directorul) al serverului de baze de date, în cazul în care au fost înainte de export.
  4. Import date istorice într-un tabel temporar.
  5. Schimbarea spațiilor de tabelă.

Copiați arhiva cu datele istorice din mass-media de rezervă într-un director de recuperare. În exemplul nostru, acest lucru ar fi directorul / backup / restaurare. De obicei, această funcție este realizată de către sistemul de backup de administrator.

Conectarea la serverul care rulează baza noastră de date, în conformitate cu sistemul de operare Oracle folosind linia de comandă.

Fișierele Izvlechom din arhivă.

Copiați fișierul cu metadatele din directorul TBS_CALLS_0106_1.DMP /u01/app/oracle/product/10.2.0/db_1/admin/DWH/dpdump/,

TBS_CALLS_0106_1_001.dbf fișier de date în directorul / Wh / oracle / disk1 / DWH /;

TBS_CALLS_0106_1_002.dbf fișier de date în directorul / Wh / Oracle / disk0 / DWH /.

15. Import date istorice

Executați spațiul tabelă export comandă metadate (a se vedea script -. Import.sh) în directorul specificat în DATA_PUMP_DIR bază de date variabilă.

După sfârșitul spațiului tabelă de metadate de import în tabelul de schema DWH apare APELURI $ EXP $ P_0106.

16. Schimbarea spațiul tabelă

Shift este fezabil (schimb partitio6) între masa SOLICITĂ $ EXP $ P_0106 și APELURI de masă.

17. Concluzie

Cu Oracle Database oferă un mecanism de gestionare a spațiului flexibil tabelă de date tabele partiționate, ceea ce face destul de ușor de a organiza gestionarea datelor istorice în OLTP-sisteme și depozite de date.

Puteți descărca o arhivă completă de script-uri de pe acest link.

18. Informații suplimentare