数据库

位置:IT落伍者 >> 数据库 >> 浏览文章

oracle数据库备份与恢复apieceofcake(4)


发布日期:2022年03月19日
 
oracle数据库备份与恢复apieceofcake(4)

oracle数据库日志备份(windows平台)

本片是接上次的数据库在线备份进行数据库全备份后需要备份归档的日志文件

建立数据库备份的脚本

在上面建立的目录下建立如下的两个脚本

建立执行备份任务的脚本(批处理文件)

文件内容如下

@echo OFF

Rem ===========================================================================

Rem NAME archive_backup_Runbat

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 // 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%\ora

set ORACLE_DATA=%ORACLE_BASE%\oradata\%ORACLE_SID%

set ORACLE_ADMIN=%ORACLE_BASE%\admin\%ORACLE_SID%

%ORACLE_HOME%\bin\sqlplus /nolog @archive_backupsql > archive_backuplog

建立完成备份认为的命令文件(sqlplus内执行的sql脚本)

文件内容如下

Rem =====================================================================================

Rem NAME archive_backupsql

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 //

Rem =====================================================================================

Rem Set SQL*Plus variables to manipulate output

set feedback off

set pagesize

set heading off

set verify off

set linesize

set trimspool on

Rem Set SQL*Plus user variables used in script

define adm = sys

define pwd = oraclei

Rem for Windows

define dir = C:\oracle\admin\TSTDB\backup\archive log

define fil = archive_backup_commandssql

define spo = archive_backup_outputlst

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)

AND completion_time < trunc(sysdate);

prompt spool off;;

spool off;

Rem Run the copy file commands from the operating system

rem @&

exit;

修改教本定义的变量

在运行教本中定义的一些变量将其改为本地数据库安装环境的变量

需要修改的变量有

在close_Backup_runbat脚本中

set ORACLE_SID=TSTDB

set ORACLE_CONNECTSTRING=tstdb

set ORACLE_BASE=c:\oracle

set ORACLE_HOME=%ORACLE_BASE%\ora

在close_backupsql脚本中

define adm = sys

define pwd = oraclei

define dir = C:\oracle\admin\TSTDB\backup

define ctl = &dir\controlctl

执行数据库备份任务

在$ORACLE_BASE\admin\admin_script目录下运行open_Backup_runbat

执行自动备份

在windows系统中添加计划任务定期运行open_Backup_runbat

上一篇:数据库的查询优化技术

下一篇:oracle中job的使用