-
Por Que o Backup Automático é Necessário?
-
Métodos de Backup Automatizados do Oracle Database
-
Como Configurar um Backup Automático Diário do Oracle Database no Windows?
-
Como configurar o backup automático diário do banco de dados Oracle no Linux?
-
Ferramenta Oracle de Recuperação Automática de Desastres
-
Auto Backup Oracle Database Perguntas Frequentes
-
Conclusão
O Oracle Database é um dos bancos de dados mais amplamente utilizados no mundo atualmente. Com recursos poderosos, estabilidade e segurança, tem sido amplamente aplicado em diversos campos. Para os administradores de banco de dados (DBAs), garantir o funcionamento normal do banco de dados e a segurança dos dados é uma tarefa extremamente importante. No trabalho diário de manutenção do banco de dados, realizar backups regulares é uma tarefa essencial. O Oracle Database oferece vários métodos de backup, incluindo backup manual, backup com RMAN, sendo o backup automático um dos métodos que efetivamente garante a segurança dos dados. O backup automático não apenas reduz operações manuais e minimiza erros, mas também permite a rápida recuperação dos dados em caso de falha no banco de dados.
Por Que o Backup Automático é Necessário?
Como armazenamento central de dados de aplicações, os bancos de dados contêm uma grande quantidade de informações críticas, como dados dos usuários e informações de configuração. Se o banco de dados sofrer falhas inesperadas ou perda de dados, isso poderá ter impactos graves ou até causar perdas significativas para o negócio. Portanto, fazer backup regularmente do banco de dados e garantir o armazenamento seguro dos arquivos de backup é crucial.
Os backups manuais têm muitas desvantagens, como a tendência ao esquecimento e a não realização em tempo hábil. Assim, o backup automatizado torna-se uma escolha melhor. Ao escrever scripts para alcançar backups automatizados, pode-se melhorar a eficiência, reduzir erros humanos e garantir de forma mais segura a segurança dos dados.
Métodos de Backup Automatizados do Oracle Database
No Oracle Database, o backup automatizado pode ser realizado utilizando o agendador de tarefas do sistema operacional (como cron jobs) e ferramentas embutidas do Oracle. Ao escrever scripts, é possível configurar tarefas agendadas para executar automaticamente operações de backup em horários predefinidos. As ferramentas mais comuns para backup automatizado no Oracle incluem Data Pump e RMAN. O Data Pump é usado para exportar dados do banco de dados, enquanto o RMAN é responsável principalmente pelo backup e recuperação do banco de dados.
Data Pump (expdp/impdp) oferece exportação e importação eficiente de bancos de dados com recursos como compactação, transferência em rede e processamento paralelo. Ele permite que os DBAs definam parâmetros de exportação e automatizem backups por meio de cron jobs. RMAN (Recovery Manager) é projetado para backup e recuperação completos do banco de dados, oferecendo suporte a backups incrementais e físicos, bem como ao acompanhamento dos arquivos de backup. Ele possibilita backups automatizados por meio de scripts e agendamento no sistema operacional. Oracle Enterprise Manager (OEM) oferece uma interface gráfica para gerenciamento de backups, enquanto ferramentas de terceiros também se integram ao Oracle para automação de backups.
Como Configurar um Backup Automático Diário do Oracle Database no Windows?
No ambiente Windows, o backup automatizado diário e a exclusão dos backups do Oracle Database podem ser realizados usando o Agendador de Tarefas.
1. Criar um Arquivo em Lote (.bat)
1.1 Script Simples
exp user/password@ORCL direct=y buffer=100000 file=D:\backup\dmp%date:~0,10% LOG=D:\backup\data.log forfiles /p "D:\backup" /s /m *.dmp /d -7 /c "cmd /c del @path"
Explicação:
O comando exp é o comando de backup de dump do Oracle, onde %date:~0,10% extrai a data no DOS.
forfiles é um comando de pesquisa de arquivos do Windows, que pesquisa arquivos .dmp no diretório de backup criado nos últimos três dias e os exclui.
Parâmetros do forfiles:
/p especifica o caminho de pesquisa (neste caso, o diretório onde os arquivos de backup são armazenados).
/m pesquisa arquivos usando uma máscara (por exemplo, .dmp para arquivos de despejo de backup).
/d filtra arquivos modificados antes ou depois de uma data específica (-3 significa arquivos com mais de três dias).
/s inclui subdiretórios.
/c especifica o comando a ser executado em cada arquivo (por exemplo, cmd /c del @file para excluir o arquivo).
1.2 Script Avançado
@echo off echo ================================================ echo Oracle Database Automated Backup Script in Windows echo 1. Uses the current date as the backup file name. echo 2. Automatically deletes backups older than 7 days. echo ================================================ :: Extract year, month, day, hour, minute, and second. set dd=%DATE:~8,2% set mm=%DATE:~5,2% set yy=%DATE:~0,4% set Tss=%TIME:~6,2% set Tmm=%TIME:~3,2% set Thh=%TIME:~0,2% set Thh=%Thh: =0% :: Generate timestamp in YYYYMMDDHHmmss format. set BACKUPDATE=%yy%%mm%%dd%%Thh%%Tmm%%Tss% :: Set username, password, and database name. set USER=admin set PASSWORD=admin set DATABASE=ORCL :: Create backup directories if they do not exist. if not exist "D:\backup_database\data" mkdir D:\backup_database\data if not exist "D:\backup_database\log" mkdir D:\backup_database\log set DATADIR=D:\backup_database\data set LOGDIR=D:\backup_database\log :: Perform the backup. exp %USER%/%PASSWORD%@%DATABASE% file=%DATADIR%\data_%BACKUPDATE%.dmp log=%LOGDIR%\log_%BACKUPDATE%.log :: Delete backups and logs older than 7 days. forfiles /p "%DATADIR%" /s /m *.* /d -7 /c "cmd /c del @path" forfiles /p "%LOGDIR%" /s /m *.* /d -7 /c "cmd /c del @path" exit
Nota: Se os caracteres chineses aparecerem corrompidos ao executar o script, salve o arquivo no formato ANSI usando o Bloco de Notas.
2. Criar uma Tarefa Agendada no Windows
Abra o Agendador de Tarefas do Windows:
Control Panel → System and Security → Administrative Tools → Task Scheduler
Abra o assistente "Create Basic Task" no painel direito.
Digite um nome para a tarefa e uma descrição opcional, depois clique em Next.
Defina o gatilho como Daily.
Escolha Start a Program, procure o arquivo em lote e conclua a configuração.
Como configurar o backup automático diário do banco de dados Oracle no Linux?
1. Identifique as variáveis de ambiente do banco de dados
Se você estiver usando a conta raiz, deverá primeiro alternar para o usuário do banco de dados:
su oracle
Verifique as variáveis de ambiente:
cat ~/.bash_profile
Garanta que as seguintes variáveis de ambiente estejam definidas:
export PATH export ORACLE_BASE=/home/nnc_db/app export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1 export PATH=$PATH:$ORACLE_HOME/bin export ORACLE_SID=orcl
2. Criar o Script de Backup
Editar um novo arquivo de script:
vi bak.sh
Copie e cole as variáveis de ambiente no arquivo `bak.sh`. Em seguida, defina uma variável `date` (usada para nomear os arquivos de backup) e utilize o comando `expdp` para exportar o banco de dados:
date=$(date +%Y%m%d) expdp db_username/db_password@db_instance dumpfile=${date}_db_auto_backup.dmp schemas=db_username compression=all
Salvar e sair.
3. Agende o Backup Usando crontab
Edite o arquivo crontab:
crontab -e
No editor de texto, adicione a seguinte linha:
0 0 * * * /home/nnc_db/bak.sh
Isso significa que o script `/home/nnc_db/bak.sh` será executado diariamente às 12:00 AM. Ajuste o horário e o caminho do arquivo conforme necessário.
Reinicie o serviço cron:
service crond restart
4. Verifique Se a Tarefa é Executada com Sucesso
Alguns usuários relataram que as tarefas do crontab podem não entrar em vigor imediatamente nos primeiros três minutos após serem configuradas. Para testar se o seu script está funcionando corretamente, você pode agendá-lo para executar a cada minuto:
* * * * * /home/nnc_db/bak.sh
Se o script executar corretamente, o problema provavelmente se deve a um atraso na ativação do crontab.
Além disso, executar o script manualmente exibirá uma saída detalhada, mas quando agendado via `crontab`, não haverá saída direta. Para verificar se o script está sendo executado, revise os logs em:
/var/spool/mail/
Ferramenta Oracle de Recuperação Automática de Desastres
Vinchin Backup & Recovery é uma ferramenta poderosa de backup e recuperação para máquinas virtuais e bancos de dados, que oferece recursos avançados de backup e recuperação de desastres, incluindo backup automático de máquinas virtuais, backup sem agente, backup LAN/LAN-Free, cópia remota, recuperação imediata, redução eficaz de dados, arquivamento em nuvem, entre outros, seguindo rigorosamente a arquitetura de backup dourada 3-2-1 para garantir de forma abrangente a segurança e integridade dos seus dados. Além disso, criptografia de dados e proteção contra ransomware oferecem a você uma dupla proteção para assegurar seus backups de banco de dados.
O backup do banco de dados Oracle requer apenas 4 etapas:
1. Selecione o objeto de backup.
2. Selecione o destino do backup.
3. Configure estratégias de backup.
Aqui, você pode configurar agendas para seus trabalhos de backup. Você pode fazer backups completos semanal ou mensalmente e realizar backups incrementais diariamente.
4. Revise e envie o trabalho.
Experimente agora a avaliação gratuita de 60 dias com todas as funcionalidades do Vinchin Backup & Recovery para facilmente proteger seus dados Oracle e alcançar backup automatizado e recuperação rápida!
Auto Backup Oracle Database Perguntas Frequentes
1. Qual é a diferença entre RMAN e Data Pump?
O RMAN é principalmente utilizado para backup e recuperação, permitindo backups físicos dos arquivos de banco de dados, backups incrementais e recuperação em um determinado momento no tempo. Em contraste, o Data Pump é usado para backups lógicos, exportando e importando objetos de banco de dados como tabelas, esquemas ou bancos de dados completos em um formato portável. Enquanto o RMAN é o melhor para recuperação completa do banco de dados, o Data Pump é ideal para migração de dados, replicação e extração seletiva de dados.
2. Como faço para restaurar uma única tabela a partir do backup do RMAN?
Use o RMAN tablespace point-in-time recovery ou o Data Pump para restaurar uma única tabela.
Exemplo com Data Pump:
impdp system/password directory=DATA_PUMP_DIR dumpfile=backup.dmp remap_table=old_table:new_table
Conclusão
O backup automatizado do Oracle Database é essencial para garantir a segurança dos dados, minimizar erros humanos e permitir uma recuperação rápida em caso de falhas. Utilizando ferramentas integradas, como Data Pump e RMAN, juntamente com agendadores do sistema operacional, os administradores de banco de dados (DBAs) podem implementar estratégias eficientes de backup tanto em sistemas Windows quanto em Linux. Backups automatizados configurados corretamente reduzem o risco de perda de dados e garantem a continuidade dos negócios, tornando-os uma parte indispensável da manutenção do banco de dados.
Compartilhar em: