Backup e Restore – Assegurando a continuidade dos negócios

Visão Geral :

Lembre-se: Uma estratégia de backup bem elaborada e bem executada, pode garantir o emprego de um DBA, a falta de uma, pode levá-lo ao olho da rua.

Após esta frase inspiradora, este artigo explicará um pouco de uma atividade muito importante desempenhada pelos DBAs Oracle, a estratégia de Backup do Banco de Dados.

Backup:

O backup é a cópia de todas as informações contidas em um Banco de Dados para um outro local, afim de assegurar que, em caso de perda total dessa informações ou parte delas, seja possível a recuperação das mesmas.

Existem várias maneiras de se realizar um backup, não importando como ele é realizado, o importante é que o backup consiga ser restaurado quando necessário, pois backup bom é aquele que volta.

Estratégia de backup:

A estratégia de backup deve ser traçada de acordo com a necessidade de cada negócio. Cada empresa tem sua especificidade, à partir disso, pode começar a trabalhar em suas estratégias de backup, e de acordo com suas decisões, podem ter uma estratégia diferente para cada Servidor, Aplicação ou Banco de Dados instalado, levando em conta a criticidade que cada qual representa para o negócio da empresa. Este assunto não será abordado, mas para uma leve explanação, pode-se dizer que existem estratégias de backup diários, semanais, quinzenais, mensais, etc…, podendo ser eles backups full, incremental a nível de modificação de arquivos ou bloco, etc…,

Conceitos de Backup de um Banco de Dados Oracle:

Antes de começarmos a ver os tipos de backup, vamos entender alguns conceitos.

Backup Lógico:

É o backup da estrutura do Banco de Dados(objetos, grants,roles, users, tablespace, estatisticas, etc…) e também dos dados, de maneira agrupada em um arquivo binário.

Backup Físico:

É a cópia dos arquivos que compões o Banco de Dados, os datafiles, controlfiles e redo log files. Este último, somente se o Banco de Dados estiver trabalhando no modo archive.

Backup consistente:

O backup consistente é o backup realizado com o Banco de Dados fechado, porém, ele somente será consistente se o Banco de Dados for fechado pelos comandos shutdown immediate ou shutdown normal ou shutdown transactional, em caso de shutdown abort, ele não é consistente, pois as informações do redo log files ainda não foram escritas nos datafiles.

Backup Inconsistente:

O backup inconsistente é feito com o banco aberto e necessita dos archive logs para realizar o recover media e garantir a consistência do Banco de Dados “pós-recover”.

Tipos de backup:

Existem alguns tipos de backup, vamos descrever brevemente estes tipos, mas, o foco dos próximos artigos serão os backups realizados via Recover Manager, o RMAN.

Export:

Este tipo de backup é realizado pelas ferramentas exp ou expdp nativas da Oracle. Estas ferramentas permitem que sejam feitos backup full, backup de tablespaces, backup de tabelas, backup apenas da estrutura do Banco de Dados e backup de schemas. Permite também compressão dos dados, execução com paralelismo, criptografia e várias outras features. No parâmetro DIRECTORY, informamos um diretório criado no Banco de Dados e no caminho especificado dentro deste diretório, será armazenado o arquivo de export, devemos manter este arquivo seguro, pois ele será sua garantia de restore.

Só podemos realizar este tipo de backup de forma inconsistente, pois, as ferramentas exp e expdp só funcionam com o Banco de Dados aberto.

Cópias arquivos do Banco de Dados:

Este tipo de backup pode ser realizado através de comandos de cópia nativos do próprio Sistema Operacional, como os comandos cp, tar, cpio do Linux ou comandos como o copy e xcopy do Windows, também, podem ser utilizados softwares de terceiros para a realização desta atividade. Neste backup, não fazemos nada mais do que copiar os arquivos que compões o Banco de Dados do local original para um local alternativo, mantendo estes arquivos seguros, pois eles serão sua garantia de restore.

Podemos realizar um backup do tipo cópia dos arquivos do Banco de Dados de duas maneiras, de forma consistente, realizando shutdown immediate, shutdown normal ou shutdown transactional antes da cópia dos arquivo, ou de forma inconsistente, colocando todas as tablespaces do Banco de Dados em modo BEGIN BACKUP, realizando o backup, e após a realização do backup, voltando as tablespaes para o modo END BACKUP.

No próximo artigo, será abordado o RMAN, seus conceitos e comandos.