以前大家了解了Oracle数据库的在线备份,另外,进行数据库全备份后需要备份归档的日志文件。 1. 建立数据库备份的脚本 在上面建立的目录下建立如下的两个脚本。 1.1 建立执行备份任务的脚本(批处理文件) 文件内容如下: @echo OFF Rem ==================================== Rem NAME - archive_backup_Run.bat Rem FUNCTION - Creates a backup script for a User Managed backup Rem NOTES - This script will create a script and run OS copy commands Rem on closed (cold) database Rem MODIFIED - ksmith 01/01/02 Original File Rem =============================== Rem For Windows, set environment variables for the root path. set ORACLE_SID=TSTDB set ORACLE_CONNECTSTRING=tstdb set ORACLE_BASE=c:\oracle set ORACLE_HOME=%ORACLE_BASE%\ora92 set ORACLE_DATA=%ORACLE_BASE%\oradata\%ORACLE_SID% set ORACLE_ADMIN=%ORACLE_BASE%\admin\%ORACLE_SID% %ORACLE_HOME%\bin\sqlplus /nolog @archive_backup.sql 》 archive_backup.log 1.2 建立完成备份认为的命令文件(sqlplus内执行的sql脚本) 文件内容如下: Rem =============================== Rem NAME - archive_backup.sql Rem FUNCTION - Creates a backup command file for a User Managed Archive Log backup Rem NOTES - This script will create a script and run OS copy commands Rem on an open or closed database. Rem MODIFIED - Mr. Tianliang Guo 2002/08/19 Rem ========================================== Rem Set SQL*Plus variables to mani***te output set feedback off set pagesize 0 set heading off set verify off set linesize 150 set trimspool on Rem Set SQL*Plus user variables used in script define adm = ‘sys’ define pwd = ‘oracle9i’ Rem for Windows define dir = ‘C:\oracle\admin\TSTDB\backup\archive log’ define fil = ‘archive_backup_commands.sql’ define spo = ‘archive_backup_output.lst’ define cpy = ‘copy’ Rem login database connect &adm/&pwd as sysdba; Rem Create a file containing all the file copy commands needed for open physical backup spool & prompt spool &; prompt alter system archive log all;; SELECT ‘host &cpy ’||name||‘ &dir’ FROM v$archived_log WHERE completion_time 》= trunc(sysdate)-1 AND completion_time 《 trunc(sysdate); prompt spool off;; spool off; Rem Run the copy file commands from the operating system rem @& exit; 2. 修改教本定义的变量 在运行教本中定义的一些变量,将其改为本地数据库安装环境的变量。 需要修改的变量有, 在close_Backup_run.bat脚本中: set ORACLE_SID=TSTDB set ORACLE_CONNECTSTRING=tstdb set ORACLE_BASE=c:\oracle set ORACLE_HOME=%ORACLE_BASE%\ora81 在close_backup.sql脚本中: define adm = ‘sys’ define pwd = ‘oracle8i’ define dir = ‘C:\oracle\admin\TSTDB\backup’ define ctl = ‘&dir\control.ctl’ 3. 执行数据库备份任务 在$ORACLE_BASE\admin\admin_script目录下运行open_Backup_run.bat 4. 执行自动备份 在windows系统中添加计划任务,定期运行open_Backup_run.bat
|