ITPub博客

首页 > 数据库 > Oracle > Oracle_for_Windows_autobackup

Oracle_for_Windows_autobackup

原创 Oracle 作者:chenoracle 时间:2017-04-03 22:37:44 0 删除 编辑

Oracle_for_Windows_autobackup

 

一: Logical_backup

(1) exp:exp_backup.bat

@echo off

rem set backupfile=chen_%date:~0,4%-%date:~5,2%-%date:~8,2%.dmp

set logfile=chen_%date:~0,4%-%date:~5,2%-%date:~8,2%.log

rem backup chen schemas

set backupfile=chen_exp_%date:~0,4%-%date:~5,2%-%date:~8,2%-%time:~0,2%-%time:~3,2%-%time:~6,2%.dmp

set logfile=chen_exp_%date:~0,4%-%date:~5,2%-%date:~8,2%-%time:~0,2%-%time:~3,2%-%time:~6,2%.log

exp chen/chen file=D:\chenjch_backup\%backupfile% log=D:\chenjch_backup\%logfile% owner=chen

REM

forfiles /p "D:\chenjch_backup" /s /m *.dmp /d -7 /c "cmd /c del @path"

forfiles /p "D:\chenjch_backup" /s /m *.log /d -7 /c "cmd /c del @path"

(2) expdp:expdp_backup.bat

@echo off

rem set backupfile=chen_%date:~0,4%-%date:~5,2%-%date:~8,2%.dmp

set logfile=chen_%date:~0,4%-%date:~5,2%-%date:~8,2%.log

rem backup chen schemas

set backupfile=chen_expdp_%date:~0,4%-%date:~5,2%-%date:~8,2%-%time:~0,2%-%time:~3,2%-%time:~6,2%.dmp

set logfile=chen_expdp_%date:~0,4%-%date:~5,2%-%date:~8,2%-%time:~0,2%-%time:~3,2%-%time:~6,2%.log

expdp chen/chen directory=chen_dump dumpfile=%backupfile% logfile=%logfile% schemas=chen

REM

forfiles /p "D:\chenjch_backup" /s /m *.dmp /d -7 /c "cmd /c del @path"

forfiles /p "D:\chenjch_backup" /s /m *.log /d -7 /c "cmd /c del @path"

一: rman_backup

(1) full

文件一: rman_full.bat

rman target / cmdfile 'D:\chenjch_backup\rman_full_backup.bat' log 'D:\chenjch_backup\rman_full_%date:~0,4%-%date:~5,2%-%date:~8,2%-%time:~0,2%-%time:~3,2%-%time:~6,2%".log'

文件二: rman_full_backup.bat

RUN

{

CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 7 DAYS;

allocate channel c1 type disk;

backup full database format 'D:\chenjch_backup\chenjch_full_%T_%u.bak' tag='full' include current controlfile;

sql 'alter system archive log current';

backup archivelog all format 'D:\chenjch_backup\arc_%T_%u.bak' delete all input;

release channel c1;

report obsolete;

crosscheck backup;

crosscheck copy;

delete noprompt expired backup;

delete noprompt expired copy;

delete noprompt obsolete;

}

exit;


(2) level 0

文件一: rman_0.bat

rman target / cmdfile 'D:\chenjch_backup\rman_0_backup.bat' log 'D:\chenjch_backup\rman_0_%date:~0,4%-%date:~5,2%-%date:~8,2%-%time:~0,2%-%time:~3,2%-%time:~6,2%".log'

文件二: rman_0_backup.bat

RUN

{

CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 7 DAYS;

allocate channel c1 type disk;

backup  incremental level 0 database format 'D:\chenjch_backup\chenjch_0_%T_%u.bak' tag='level_0' include current controlfile;

sql 'alter system archive log current';

backup archivelog all format 'D:\chenjch_backup\arc_%T_%u.bak' delete all input;

release channel c1;

report obsolete;

crosscheck backup;

crosscheck copy;

delete noprompt expired backup;

delete noprompt expired copy;

delete noprompt obsolete;

}

exit;


(3) level 1

文件一: rman_1.bat

rman target / cmdfile 'D:\chenjch_backup\rman_1_backup.bat' log 'D:\chenjch_backup\rman_1_%date:~0,4%-%date:~5,2%-%date:~8,2%-%time:~0,2%-%time:~3,2%-%time:~6,2%".log'

文件二: rman_1_bacukup.bat

RUN

{

CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 7 DAYS;

allocate channel c1 type disk;

backup incremental level 1 database format 'D:\chenjch_backup\chenjch_1_%T_%u.bak' tag='level_1' include current controlfile;

sql 'alter system archive log current';

backup archivelog all format 'D:\chenjch_backup\arc_%T_%u.bak' delete all input;

release channel c1;

report obsolete;

crosscheck backup;

crosscheck copy;

delete noprompt expired backup;

delete noprompt expired copy;

delete noprompt obsolete;

}

exit;

其他:

文件名称格式说明

%DATE:~0,4% --> yyyy

%DATE:~5,2% --> mm

%DATE:~8,2% --> dd

%TIME:~0,2% --> hh

%TIME:~3,2% --> mi

%TIME:~6,2% --> ss

 

启用归档模式说明:

一:启用归档模式,不显性指定归档目录,不显性指定归档文件格式;

SQL> shutdown immediate

SQL> startup mount

SQL> alter database archivelog;

--- 如果DBCA 建库时启动闪回区,默认归档目录存储在闪回区里,

如果没有启用闪回区,归档路径默认在$ORACLE_HOME\RDBMS 下;

例如:D:\app\Administrator\product\11.2.0\dbhome_1\RDBMS

SQL> alter database open;

 

二:启用归档模式,显性指定归档目录,显性指定归档文件格式;

SQL> shutdown immediate

SQL> startup mount

SQL> alter database archivelog;

SQL> alter system set log_archive_dest_1='location=D:\app\Administrator\chenjch_arch';

SQL> alter system set log_archive_format='chenjch_%t_%s_%r.arc' scope=spfile;

SQL> alter database open;

 

log_archive_format:

%s log sequence number

%S log sequence number, zero filled()

%t thread number()

%T thread number, zero filled()

%a activation ID()

%d database ID()

%r resetlogs ID that ensures unique names are constructed for the archived log files across multiple incarnations of the database

 

三:启用归档模式,指定闪回区

SQL> shutdown immediate

SQL> startup mount

SQL> alter database archivelog;

启用闪回区

alter system set db_recovery_file_dest_size=3G;

alter system set db_recovery_file_dest='D:\app\Administrator\chenjch_fra';

或

alter system set log_archive_dest_1='location=USE_DB_RECOVERY_FILE_DEST';

SQL> alter database open;


RMAN通过clear将参数改回默认值;
configure controlfile autobackup on;
configure controlfile autobackup clear;

欢迎关注我的微信公众号"IT小Chen",共同学习,共同成长!!!



来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/29785807/viewspace-2136547/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
Oracle ACE、OCMU 用户组成员、Oracle 11g OCM、微信公众号"IT小Chen"

注册时间:2014-08-05

  • 博文量
    853
  • 访问量
    2727959