Backup Oracle Agendado por Crontab

Publicado por Lucas Salviano em 24/06/2015

[ Hits: 10.901 ]

 


Backup Oracle Agendado por Crontab



1. Primeiro acesse o Putty ou outro programa de acesso ao terminal Linux, no caso será usado o Putty. Na tela inicial coloque o IP e a porta SSH do servidor, a padrão é 22.
2. Após colocar o login e senha de acesso (preferencialmente com o usuário root), como exemplo usaremos a pasta home dele, crie um arquivo com o editor de sua preferência, no exemplo será utilizado o Nano.

Ex.: nano nome_arquivo.sh
3. No arquivo coloque inicialmente a tag "#!/bin/bash" para identificar que é um script, seguido pelas variáveis de ambiente do Oracle, e por fim os comandos de importação, não esquecendo do comando exit no final do arquivo para finalizar o script (o comando sleep é para aguardar em segundos o tempo definido após executar a linha anterior).

Obs.: Para descobrir as variáveis configuradas no sistema, utilizar o comando echo no terminal.

Ex.: echo $ORACLE_HOME - a saída do comando deverá ser o valor da variável no script, o motivo de ter de colocar as variáveis no script, se dá pelo fato que de no momento em que for adicionar o script na Cron (a qual será explicada posteriormente), ela utiliza uma configuração própria de variáveis, sendo assim necessário adicionar as variáveis do Oracle.

Comando utilizado para backup:

exp system/dbaoracle file=nome_do_arquivo.dmp owner=nome_do_banco grants=Y indexes=Y STATISTICS=NONE compress=N rows=Y

Para salvar o script, ou usar qualquer uma das opções do Nano, utilizar a tecla Ctrl + Letra como no menu demonstrado na parte de baixo do editor.

Ex.: Ctrl+O - Salva. Ctrl+X - Sai do editor.
4. No passo seguinte o comando chmod com o complemento +x adiciona a permissão de execução no arquivo.

Ex.: chmod +x scriptbkporc.sh

Para verificar se as alterações foram aplicadas utiliza-se o comando ls com o complemento -l.

Ex.: ls -l scriptbkporc.sh

Após ter adicionado a permissão ao arquivo pode-se testá-lo o executando, utiliza-se ./nome_arquivo para isso.

Ex.: ./scriptbkporc.sh
5. Para adicionar o arquivo na Cron (que funciona como uma espécie de agendador de tarefas no Linux) utiliza-se o comando crontab.

Os complementos desse comando são:
  • -l usuário -- lista as tarefas agendadas para o usuário;
  • -e usuário -- edita o agendador;
  • -d usuário -- apaga o arquivo do usuário;
  • -c diretório -- especifica um diretório para o Crontab.

A sintaxe é a seguinte:

[minutos] [horas] [dias do mês] [mês] [dias da semana] [usuário] [comando]

Sendo:
  • Minutos: coloque números de 0 a 59;
  • Horas: coloque números de 0 a 23;
  • Dias do mês: coloque números de 1 a 31;
  • Mês: coloque números de 1 a 12;
  • Dias da semana: coloque números de 0 a 7;
  • Usuário: é o usuário que vai executar o comando (não é necessário especificá-lo se o arquivo do próprio usuário for usado);
  • Comando: a tarefa que deve ser executada.

Para abrir o modo de edição da Cron, usa-se o comando crontab com o complemento -e, irá abrir um arquivo vazio no editor padrão do sistema, o vi, com algumas particularidades como não trazer as informações de seus comandos como o Nano, sendo assim não muito popular entre os usuários leigos. Para iniciar a edição ou como é chamado no vi modo de inserção, usa-se a tecla insert.

Para esse exemplo a sintaxe ficará da seguinte forma:

00 02 * * 5 /root/scriptbkporc.sh > /bkp/crontab.log 2>&1

Nesse exemplo a crontab está agendada para executar o script às 02:00, todos os dias do mês, todos os meses e no 5 dia da semana, sendo que ele começa a contar domingo como 0 então o 5 seria sexta-feira.

Obs.: o complemento > /bkp/crontab.log 2>&1 é para jogar toda a saída do script para dentro do arquivo crontab.log, localizado na pasta /bkp, se desejar que a cada exportação ele não substitua as informações no lugar de > coloque >> assim ele vai continuar a escrever na ultima linha (cuidado ao utilizar dessa forma, apesar de preservar as informações, o arquivo pode se acabar tornando muito grande), o complemento 2>&1 é para definir que erros gerados pela cron e não somente erros do script irão para o arquivo.
Para finalizar a edição do arquivo, tecle Esc, depois digite :wq e Enter (esc para ir ao modo comando do vi, :wq para salvar [w] e sair [q]).

6. Para consultar se a crontab foi adicionada com sucesso, utiliza-se o comando crontab com o complemento -l, para listar a Cron agenda para o usuário.
7. Se necessário realizar um teste da Cron, agendar o crontab para um horário próximo ao horário do sistema, para verificar o horário e data do sistema utiliza-se o comando date.

Outras dicas deste autor
Nenhuma dica encontrada.
Leitura recomendada

Oracle SQL Developer 2.1: Unit Testing com vídeo e tutorial

Oracle 11g - erro: An unexpected error has been detected by HotSpot Virtual Machine

Startup e shutdown automático do Oracle 9i e 10g no Linux, rápido e prático

Erro de Lock - ORA-01591

Oracle + SQLPlus: Como aumentar tablespace

  

Comentários

Nenhum comentário foi encontrado.



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts