Č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