sábado, 18 de fevereiro de 2012

Alterando banco de dados Single para modo ARCHIVELOG

Este artigo propõe alterar uma base de dados single de modo NOARCHIVELOG para modo ARCHIVELOG, para qual proposito? Simples, a partir do momento que sua base está funcionando em modo ARCHIVELOG podemos realizar backups online (hot), quando em modo NOARCHIVELOG conseguimos apenas realizar backups offline (cold) e como o proprio nome ja diz, sua base precisa estar parada, offline, algo complicado certo? 

Porém o principal fator que impõe importância no modo ARCHIVELOG é de que desta forma é possível realizar uma recuperação até o ultimo commit executado no database, praticamente sem perdas de informações (archives/redologs online disponíveis), quando utilizando um backup offline para recuperação a perda de informações são do momento em que o backup foi realizado até o momento da falha. 

Bem, visto a importância do modo ARCHIVELOG, vamos alterar nossa base de dados single para o modo archivelog. 

Primeiramente vamos confirmar se ela está em modo NOARCHIVELOG:

SQL> select NAME, OPEN_MODE, LOG_MODE from v$database;
 
NAME      OPEN_MODE  LOG_MODE
--------- ---------- ------------
ORCL10G   READ WRITE NOARCHIVELOG
ou
SQL> archive log list;
Database log mode              No Archive Mode
Automatic archival             Disabled
Archive destination            USE_DB_RECOVERY_FILE_DEST
Oldest online log sequence     285
Current log sequence           287

Confirmado que a base está em modo NOARCHIVELOG, vamos ajustar um destino para os archives (redolog arquivados) que serão gerados.

Sintaxe:alter system set log_archive_dest_1=’LOCATION=’ scope=spfile;

SQL> alter system set log_archive_dest_1='LOCATION=/oraarchive/orcl10g' scope=spfile;
 
System altered.

Desta forma o parâmetro de destino 1 foi ajustado para o local “/oraarchive/orcl10g”, note que antes do caminho de destino devemos especificar “LOCATION”. O scope será definido como spfile (podemos tratar mais sobre o scope em outro artigo já que não é o foco deste).

Agora iremos ajustar o formato que os archives serão gerados.

Sintaxe:alter system set log_archive_format=’_%t_%s_%r.arc’ scope=spfile;

SQL> alter system set log_archive_format='orcl10g_%t_%s_%r.arc' scope=spfile;
 
System altered.

ORACLE_SID = Nome da instance;
%t = Número da thread;
%s = Número de sequencia do log;
%r = Resetlog ID.

O próximo passo é a parada da base de dados e startup em modo mount.

SQL> shutdown immediate;
Database closed.
Database dismounted.
ORACLE instance shut down.
 
SQL> startup mount;
ORACLE instance started.
 
Total System Global Area  234881024 bytes
Fixed Size                  1273008 bytes
Variable Size             125829968 bytes
Database Buffers          104857600 bytes
Redo Buffers                2920448 bytes
Database mounted.

Alteramos agora o database para modo ARCHIVELOG e abrimos a base,

SQL> alter database archivelog;
 
Database altered.
 
SQL> alter database open;
 
Database altered.

Verificando se a base foi alterada para ARCHIVELOG,

SQL> select NAME, OPEN_MODE, LOG_MODE from v$database;
 
NAME      OPEN_MODE  LOG_MODE
--------- ---------- ------------
ORCL10G   READ WRITE ARCHIVELOG
 
SQL> archive log list;
Database log mode              Archive Mode
Automatic archival             Enabled
Archive destination            /oraarchive/orcl10g
Oldest online log sequence     285
Next log sequence to archive   287
Current log sequence           287

Para certificarmos que os archives estão sendo gerados com sucesso podemos forçar um switch e verificar se foram criados abaixo do destino especificado.

SQL> alter system switch logfile;
 
System altered.
 
SQL> !
[oracle@orcl ~]$ cd /oraarchive/orcl10g
[oracle@orcl orcl10g]$ ls -lrt
-rw-r----- 1 oracle dba 15048704 Set  4 20:52 orcl10g_1_287_757628597.arc

Pronto, nossa base já está em modo ARCHIVELOG, agora só basta implementar/ajustar as rotinas de backup.
Postagem mais recente Postagem mais antiga Página inicial

0 comentários:

Postar um comentário

Translate

# Suporte

# ACE Program

#Oracle

#Oracle
Disclaimer: The views expressed on this blog are my own and do not necessarily reflect the views of Oracle.

#Blog reconhecido

#ARTICULISTA

Marcadores

Postagens populares