2. 12. 2014

Oracle - archívny mód

Činnosti v oracle DB sú zaznamenávané v tzv. redo logoch. Používajú sa pri opravách chýb, obnove DB zo zálohy a podobne.
Sú organizované v skupinách, každá obsahuje jeden alebo viac súborov (mirroring pre prípadnú strátu dát). Zapisuje sa do jednej skupiny súborov, pri akcii nazývanej logswitch sa prepne skupina na nasledujúcu a cyklicky sa prepisujú (po poslednej skupine opäť prvá).
Aby sa uchovávala dlhá história napr od poslednej zálohy bežiacej každý mesiac je možné kópie redo logov odkladať, kópie sa volajú arch logy.



Redo logy možno skontrolovať:
SQL> select GROUP#,THREAD#,bytes/1024/1024,STATUS from v$log;
GROUP# THREAD# BYTES/1024/1024 STATUS
---------- ---------- --------------- ----------------
1 1 100 INACTIVE
2 1 100 INACTIVE
3 1 100 CURRENT

Vidieť tu, že aktívna je skupina č.3.


Nastavenie ciest


Pre nastavenie cieľového adresára je vhodné použiť iný filesystém ako využívaju datafiles, pretože sa jedná o dynamicky vytvárané množstvo dát, ktoré je vhodné čistiť alebo ukladať na pásky RMANom.

Nastavenie cesty pre archlog v starších verziách (pfile,spfile súbor):
*.log_archive_dest='/u4/oracle/DBSID/ARCHLOG/DBSID'
*.log_archive_format='_%s.log'


Nastavenie od verzie 10 môže byť rovnaké, ale môže obsahovať aj FRA (flash recovery area):
*.db_flashback_retention_target=1440
*.db_recovery_file_dest_size=21474836480
*.db_recovery_file_dest='/opt/oracle/admin/DBSID/arch'


Nastavenie cesty je od verzie 10 odporúčané novším parametrom:
*.log_archive_dest_1='LOCATION=/opt/oracle/admin/DBSID/arch'
Parametrov s cestou možno uviesť 10, pre verziu oracle11 až 32, kam sa budú ukladať archívne logy (mirror).

Pozor na pridaný reťazec LOCATION, samotné nastavenie je možné použiť len jedným spôsobom, preto je potrebné pri zmene pôvodný parameter (log_archive_dest) zrušiť.

Archívne logy je možno tiež nasmerovať na rovnaký adresár ako je nastavená FRA.
*.log_archive_dest_1='LOCATION=USE_DB_RECOVERY_FILE_DEST'


Zapnutie a vypnutie


Pre zapnutie je potrebné reštartovať DB:
SQL> shutdown immediate
SQL> startup mount
SQL> alter database archivelog;
SQL> alter database open;
SQL> exit

Kontrola zapnutia
Ak je DB v archívnom móde, beží background proces "arc".
ps -ef | grep arc  oracle 22259 1 0 Nov 16 ? 1:55 ora_arc2_DBSID


Na skúšku možno prepnúť redo skupinu a vygenerovať tak arch log:
SQL>  alter system switch logfile;
  System altered.


Pre zistenie priamo v DB, či je v archívnom móde:
SQL>  archive log list
  Database log mode Archive Mode
  Automatic archival Enabled
  Archive destination /opt/oracle/admin/DBSID/arch
  Oldest online log sequence 1012
  Next log sequence to archive 1014
  Current log sequence 1014


Pre vypnutie archívneho módu je rovnaký postup ako pre zapnutie:
SQL> shutdown immediate
SQL> startup mount
SQL> alter database noarchivelog;
SQL> alter database open;
SQL> exit


Pozn: 
Archivovanie je možné pozastaviť a opäť spustiť príkazmi:
archive log stop
archive log start

Žiadne komentáre:

Zverejnenie komentára