Rotina de bkps salvandoem 2 hds externos

1. Rotina de bkps salvandoem 2 hds externos

heric almeida
happortal

(usa )

Enviado em 26/09/2014 - 02:57h

Bom dia!
Galera sou novo aqui, espero poder retribui a todos que contribuírem. Tenho pouco mas de 4 meses nesse mundo de liberdade, por conta das tarefas que me propuseram cuida do banco de dados da empresa! "Como grande parte da queles que e são no ramo de TI sou mas um que recebi a seguinte frase ou da conta ou esta fora!" Então estou aqui
Seguinte nesse meio tempo aprendei a fazer a instalação do Red Hat para poder subir o banco de dados da empresa que roda em Oracle 10g! Contudo uso na realidade o Oracle Enterprise 5.6 para rodar o Oracle 10g!

Digamos assim o servidor esta digamos dimensionado quanto ao requisitos de instalação de ambos!

Conseguir criar scripts para montar e desmontar o banco caso seja reiniciado tudo automaticamente, criei uma rotina de bkp para rodar em 2 horários usando o crontab!

(Obs: recorri ao tutorias e videos na net)!



Só que meu atual problema foi depois do assalto que tivemos na empresa levaram o servidor de produção, por sorte não levaram o hd externo onde fazia o bkp dos bkps! Mediante essa situação meu chefe solicitou o seguinte. "-Quero que parti de hoje os bkps sejam feitos em 2 hd diferentes para serem levados todos os dias apos os mesmo terem sindo feitos"! Claro que eu poderia continuar fazendo o que fazia antes! no fim do dia fazer uma copia do log juntamente com o bkp para os 2 hds externos, porém gostaria de automatizar esse serviço!



Abaixo vou postar o script que uso para realizar meus bkps que são feitos em horas destituas!

São dois arquivos bkps.sh com nomes diferem mas ambos tem o mesmo conteúdo mudando apenas o nome dos arquivos para nao substituírem um ao outro a pois realizar o bkps!




#!/bin/bash

ORACLE_BASE=/u01/app/oracle
ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1
DATA=`date +%d%m%Y`
ARQUIVO=Backup-1300.$DATA

echo "Iniciando backup: Schema empresa..."
$ORACLE_HOME/bin/exp system/senha file=/backup/oracle/$ARQUIVO.dmp log=/backup/oracle/ARQUIVO.log owner=empresa


No crontab fica
30 12 *** /bin/su - oracle -c "/bin/sh /home/oracle/backup12.sh"
00 18 *** /bin/su - oracle -c "/bin/sh /home/oracle/backup18.sh"

assim como podem ver tenho 2 arquivos SH para realizar os bkps em horários diferente. Não sei se seria possivel fazer tudo em um só Sh mas está funcionando!


Preciso de opiniões e literalmente de ajuda para conseguir achar a melhor forma de implantar o seguinte.
Fazer os bkps em 2 hd externo ao mesmo tempo!

Se possível queria dar uma melhorada no meu script fazendo ele já sair comprimido!

Pensei em criar um outro SH para relizar a copia dos arquivos para ambos hds, só que me esbarro no pouco conhecimento.
Como o script interpretaria que o bkp já foi concluído, como fazer um script que interpretasse isso, como definir que ele não copia-se 2 vez o mesmo arquivo!

Ex de como deveria funcionar ao meu ver

As 12:30 o bkp é realizado no caso seria copiado para os 2 Hds as 18:30 outro bkp é feito e seria copiado apenas ele para os 2 hds, sem copiar novamente o outro!

Lembrando que gostaria que os arquivos gerado fossem zipados comprimindo o tamanho!

Perdão se já tem algo parecido mas não localizei.
Desde já agradeço!




  


2. Re: Rotina de bkps salvandoem 2 hds externos

nelio
neliobjr

(usa Red Hat)

Enviado em 26/09/2014 - 10:21h

Ola...

Cara entendi seu problema, lamento pela roubo ai, é sempre complicado...

Mas gostaria de sugerir algumas coisas:

- O backup que vc esta fazendo é imp, faça-o em impdp que será realizado mais rápido, sua restauração é mais rápida e a taxa de compressão é bem melhor, ficando menor o arquivo final. Para esta opção, o impdp não é realizado se já existir um backup com o mesmo nome, ou seja, hoje você fez o primeiro backup, o backup Impdp nome_da_usa_base.dp, será feita com sucesso, na segunda vez que você for faze-lo, primeiro você precisa excluir o arquivo já existente para criar o novo do segundo dia, ou existe uma opção que faz um replace, que não lembro de cabeça tb, da uma procurada na net, que não é nem um bicho de sete cabeças.

- Não há necessidade de fazer o backup em 2 lugares diferentes. Na verdade eu nunca vi realizar desta maneira, o que é feito, é no final do seu script, você adicionar a compactação do arquivo realizado e efetuar uma copia para os 2 hds externos, que ficaria algo assim:

"echo "Iniciando backup: Schema empresa..."
$ORACLE_HOME/bin/exp system/senha file=/backup/oracle/$ARQUIVO.dmp log=/backup/oracle/ARQUIVO.log owner=empresa"
cd /backup/oracle/
tar -zcvf NOME_DO_BACKUP.TGZ $ARQUIVO.dmp ARQUIVO.log
cp NOME_DO_BACKUP.TGZ /primeiro_hd_externo/
cp NOME_DO_BACKUP.TGZ /segundo hd externo/

- Me permita sugerir, o que eu acho mais critico nesta sua rotina, ter os 2 hds externos não adiantará de nada se derem o azar de serem levados também, acho que o ideal é você realizar a copia apos compactação para um ftp. Sinceramente eu não conheço um ftp publico, não sei se o google, dropbox, permite copia via ftp, mas da uma estudada nisto, em minha empresa temos servidores de ftp externos. Só tome cuidado, diz a voz da esperiencia, rsrs, com ftps externo em windows, faça testes de restore, se conseguirá extrair o arquivo compactado, existe um problema que da para ser contornado, mas para descrever sito-o, não me recordo quem faz o que, mas o ftp windows grava em ASCII e o linux em binário, faz tudo normalmente copia, etc, a ponto de fazer você acreditar que a copia esta sendo feita com sucesso, mas na hora de extrair o dia que precisar dará pau. (Já passei por isto), existe uma opção a se colocar que faz a copia ser realizada em binario (ou o contrario), em um servidor, ex. passando uma opção (que não recordo), tipo, binary=yes, no parametro de copia. se optar por esta opção e tiver dúvidas, escreve ai que te passo mais informações.




3. Re: Rotina de bkps salvandoem 2 hds externos

heric almeida
happortal

(usa )

Enviado em 26/09/2014 - 10:54h

Bom dia!
Olá Neliobjr muito obrigado pelo retorno rápido!

Sobre a questão do bkp ser feito com os comando exp é que na época como estava começando tive que me virar nos 30 srs, dai ao meu ver na época ficou mas pratico fazer o seguinte entrava como usuário Oracle dava o exp e salva os bkps e caso precisa-se importa dava o imp, depois com o passar dos dias comecei a pesquisar uma forma de automatizar foi quando cheguei a montar esse script!

Mas vou começar a estudar essa outra forma sim com certeza não quero apenas saber fazer pelo exp e pelo imp quero poder esta me atualizando!

vou implementar por hora o que você indicou ali no script!

Concordo plenamente com você sobre salvar em 2 Hds srsr.. mas se sabe quem as vez temos que fazer o que é pedido simplesmente por submissão, mas lá na frente apresentamos algo que realmente vá valer a pena.

Já fazer por ftp era meu sonho mesmo srsr! mas preciso estudar para ver por onde começar agradeço muito suas dica relatando os problemas que já passou por questões de servidores.

Aproveitando o tópico tem como criar uma forma de enviar por e-mail informando que obkp foi realizado com sucesso e enviado o logo do backup?


Grato de mas!







Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts