Pular para o conteúdo

Fóruns Banco de dados Oracle Criar banco standby Criar banco standby

#104354
kirrasc
Participante

    Senhores aqui vai minha primeira contribuição, tenho feito da seguinte maneira:
    1 – No banco de produção estou salvando os archives em ambas as máquinas via mapeamento NFS da máquina standby;
    2 – Na máquina standby, subi o banco em modo mount;
    3 – Ainda na máquina standy, agendei na cron o script abaixo para rodar de hora em hora.

    [color=#00BF00]#!/bin/bash

    ##############################################################################

    copiaArchivelog

    ##############################################################################
    function copiaArchivelog(){
    # Copia os archives do diretorio de origem para o diretorio de destino
    echo “************** Iniciando a Copia dos Archivelogs **************”>>$wArqLog
    cp -puv $wDirArqOrig/* $wDirArqDest/>>$wArqLog
    chown oracle:dba $wDirArqDest/*
    echo “***************** fim da Copia dos Archivelogs *****************”>>$wArqLog
    }

    ##############################################################################

    recoverDB

    ##############################################################################
    function recoverDB(){
    # Recupera a base de dados
    echo “********* Iniciando a recuperacao da base de dados… *********”>>$wArqLog
    su – oracle -c ”
    export ORACLE_SID=$wStandySID
    sqlplus<>$wArqLog
    echo “********* Fim da recuperacao da base *********”>>$wArqLog
    }

    ##############################################################################

    excluiArq

    ##############################################################################
    function excluiArq(){
    echo “********* Exlcuindo archivelogs com mais de 9 dias.. *********”>>$wArqLog
    # Exclui arquives com mais de 9 dias
    find $wDirArqDest/* -mtime +9 -exec rm {} ;>>$wArqLog
    echo “********* Fim da exclusao dos arqchivelogs *********”>>$wArqLog
    }

    ##############################################################################

    main

    ##############################################################################

    Variaveis Globais

    wDirArqOrig=/u02/backup/arch_orcl # Direteorio de origem dos archivelogs
    wDirArqDest=/u02/app/oracle/oradata/orcl/archive # Diretorio de destino dos archivelogs
    wStandySID=orcl # SID da base standby
    wArqLog=/u01/app/oracle/admin/orcl/backup/standbyDB.log # Arquivo de log da rotina

    echo “##########################################################################################” >>$wArqLog
    echo “############# Iniciando atualizacao standbyDB – $(date) #############”>>$wArqLog
    echo “##########################################################################################” >>$wArqLog

    chamada das funcoes

    copiaArchivelog # Copia os archives para o diretorio de archives da base standby
    recoverDB # Recupera a base a partir dos archives copiados
    excluiArq # Exclui , da base standby, com mais de 9 dias

    echo “########################################################################################### ###”>>$wArqLog
    echo “################################## Fim da Atualizacao ##################################### ###”>>$wArqLog
    echo “########################################################################################### ###”>>$wArqLog
    echo ” “>> $wArqLog[/color]

    Essa eram minhas colocações, espero que sejam úteis.
    Att,

    Rodrigo Martins