windows rman备份脚本

合集下载

Rman使用简明

Rman使用简明

Rman使用简明一、Rman备份概述1,含义RMAN可以用来备份和恢复数据库文件、归档日志和控制文件,在9i中也可以用来备份和恢复spfile。

也可以用来执行完全或不完全的数据库恢复。

RMAN启动数据库上的Oracle服务器进程来进行备份或还原。

备份、还原、恢复是由这些进程驱动的。

具有如下特点:1)功能类似物理备份,但比物理备份强大N倍,从下面的特点可以看到;2)可以压缩空块;3)可以在块水平上实现增量;4)可以把备份的输出打包成备份集,也可以按固定大小分割备份集;5)备份与恢复的过程可以自动管理;6)可以使用脚本(存在Recovery catalog中)7)可以做坏块监测2,概念备份集(backup sets):备份集顾名思义就是一次备份的集合,它包含本次备份的备份片,以oracle 专有的格式保存。

一个备份集根据备份的类型不同,可能构成一个完全备份或增量备份。

注:一次备份可能产生多个备份集,根据数据量的大小和参数设定不同而变化备份片(Backup pieces):每个备份片是一个单独的输出文件。

如果备份片没有大小的限制,一个备份集就只由一个备份片构成。

备份片的大小不能大于你的文件系统所支持的文件长度的最大值。

Image copies (映像备份)映像备份不压缩、不打包、直接COPY独立文件(数据文件、归档日志、控制文件),类似操作系统级的文件备份。

Full backup 全备份全备份是指对数据文件中使用过的数据块进行备份,没有使用过的数据块是不做备份的,也就是说,RMAN进行备份是进行压缩的。

Incremental backup 增量备份增量备份是指备份数据文件中自从上一次同一级别的或更低级别的备份以来被修改过的数据块。

与完全备份相同,增量备份也进行压缩。

增量备份虽然概念很好,备份也很简单,但恢复起来却是另外一回事,不仅麻烦而且容易出错,所以实际中越来越少使用,到了Oracle 9i已经建议不再使用,以后版本会逐渐取消对增量备份的支持。

windows自动备份脚本(批处理)

windows自动备份脚本(批处理)

windows自动备份脚本(批处理)脚本(bkin1.bat)自动备份到一个文件夹脚本:1 本脚本可全程自动备份指定文件夹到目标文件夹,生成的临时文件与此脚本同目录2 备份说明:备份文件夹下所有文件(文件夹)会自动备份到:目标文件夹\备份日期命名的文件夹下,且将备份文件和备份时间记录到"备份记录.txt"文件3 实例:备份文件夹为"d:\会议文件",目标文件夹为"f:\会议文件备份",备份时间为2006-12-13,则"d:\会议文件"下所有文件(文件夹)和“备份记录.txt"会更新到"f:\会议文件备份"4 本脚本可自动设定执行计划任务(自行设定和启动Schedule服务),默认为每周5下午5点开始备份,备份完成40秒后自动关机(默认的计划任务名同临时文件名)——————————————————————————————————————bkin1.bat代码:QUOTE:@rem -----------------------自动备份脚本-by moochat 06.12----------------------------------@title 自动备份脚本-by moochat@color 1e@echo 说明:1 本脚本可全程自动备份指定文件夹到目标文件夹,生成的临时文件与此脚本同目录@echo 2 备份说明:备份文件夹下所有文件(文件夹)会自动备份到:目标文件夹\备份日期命名@echo 的文件夹下,且将备份文件和备份时间记录到"备份记录.txt"文件@echo 3 实例:备份文件夹为"d:\会议文件",目标文件夹为"f:\会议文件备份",备份时间为@echo 2006-12-13,则"d:\会议文件"下所有文件(文件夹)和“备份记录.txt"会更新到"f:\会@echo 议文件备份"@echo 4 本脚本可自动设定执行计划任务(自行设定和启动Schedule服务),默认为每周5下午5点@echo 开始备份,备份完成40秒后自动关机(默认的计划任务名同临时文件名):start@echo 请输入需要建立、修改的批处理备份文件名(如beifen,后缀默认为bat)@set /p filenm=@echo 请输入需要备份的文件路径( 文件名和路径均可,如e:\protel99se.exe,d:\会议文件 )@set /p BackupPath=@echo 你需要备份的文件路径为: %BackupPath%@echo @echo 你需要备份的文件路径为: %BackupPath%>%filenm%.bat@echo 请输入需要备份到那个路径(如f:\会议文件备份,注意结尾不能有" \ ")@set /p TargetPath=@echo 需要备份到那个路径为%TargetPath%@echo @echo 需要备份到那个路径为%TargetPath%>>%filenm%.bat@echo @if not exist %TargetPath% md %TargetPath%>>%filenm%.bat@echo @md %TargetPath%>>%filenm%.bat@echo @echo 开始备份:>>%filenm%.bat@echo @xcopy /d /e %BackupPath% "%TargetPath%">>%filenm%.bat@echo @echo 备份完成>>%filenm%.bat@echo @echo 备份结束时间:%%date% %time%%>>%filenm%.bat@echo @echo 备份文件夹为: %TargetPath% ----备份时间:%%date%%-%%time%% ^>^>%TargetPath%\备份记录.txt>>%filenm%.bat@echo @explorer %TargetPath%>>%filenm%.bat@echo [1]运行备份文件%filenm%.bat后退出@echo [2]修改备份设置@echo [3]设定计划任务@echo [4]删除建立的批处理备份文件并退出@set /p item=@if "%item%"=="1" call %filenm%.bat & del %filenm%.bat & exit@if "%item%"=="2" dir *.bat && goto start@if "%item%"=="3" sc config Schedule start= auto && net start Schedule && goto task@if "%item%"=="4" del %filenm%.bat & exit:task@echo @shutdown -s -f -t 40 -c "已将%BackupPath%备份到%TargetPath%,如要取消关机,请在开始-运行窗口输入shutdown -a">>%filenm%.bat@copy %filenm%.bat c:\windows\tasks\ & del %filenm%.bat @echo 默认的备份计划任务为每周5下午5点开始将%BackupPath%备份到%TargetPath%@echo 手动设定计划任务请自行修改(%filenm%.bat文件已复制到计划任务文件夹)@schtasks /create /tn "%filenm%" /tr c:\windows\tasks\%filenm%.bat /sc weekly /d FRI /st 17:00:00 @explorer c:\windows\tasks@rem ---------------------------------欢迎转载---------------------------------------------。

Windows下自动备份mysql数据库bat脚本

Windows下自动备份mysql数据库bat脚本

Windows下⾃动备份mysql数据库bat脚本1、利⽤MySQL提供的备份命令mysqldump脚本如下:@echo off::删除⼀周前的备份数据forfiles /p "F:\mysqlbak" /m backup_*.sql -d -6 /c "cmd /c del /f @path"::设置时间变量set "Ymd=%date:~0,4%%date:~5,2%%date:~8,2%%time:~0,2%%time:~3,2%%time:~6,2%"::进⼊mysql安装⽬录的bin⽬录下cd C:\Program Files (x86)\MySQL\MySQL Server 5.5\bin\::执⾏备份操作不⾏的话加pathmysqldump -uroot -p1234 --databases storage> F:\mysqlbak\backup_%Ymd%.sql@echo on新建⽂本⽂档,复制保存上⾯指令,修改⽂件后缀名为.bat格式.注:forfiles 为删除过期⽂件的命令,-d -7 删除7天的⽂件;–user=root 为 MySQL ⽤户名;–password=1234为 MySQL 密码;“storage” 为要备份的数据库的名称;backup_%Ymd%.sql 是根据当前时间规则⽣成备份⽂件的名称。

关于时间参数的参考:%date:~0,10% //提取年⽉⽇信息%date:~-3% //提取星期⼏信息%time:~0,5% //提取时间中的时和分%time:~0,-3% //提取时和分和秒信息注:不同系统时间可能不⼀样,可以cmd输⼊time或date命令查看详细格式信息2、在Windows Server中,我们进⼊服务器管理⾯板,点击右上⾓菜单栏中的“⼯具”,选择其中的“任务计划程序”,打开了任务计划程序之后,我们点击右侧的“创建基本任务” 去执⾏这个bat⽂件就可以了。

在Windows系统上自动备份MySQL数据库

在Windows系统上自动备份MySQL数据库

在Windows系统上自动备份MySQL数据库MySQL数据库是一种常用的关系型数据库管理系统,用于存储和管理大量的数据。

为了确保数据的安全性,定期备份数据库是必要的。

本文将介绍在Windows系统上如何设置自动备份MySQL数据库的方法。

一、备份脚本的编写首先,我们需要编写一个脚本来实现备份数据库的功能。

打开一个文本编辑器,输入以下内容:```bash@echo offset DATE=%DATE:~0,4%%DATE:~5,2%%DATE:~8,2%set TIME=%TIME:~0,2%%TIME:~3,2%%TIME:~6,2%cd C:\Program Files\MySQL\MySQL Server 8.0\binmysqldump -u 用户名 -p密码数据库名 > C:\备份目录\backup_%DATE%_%TIME%.sql```请将上述代码中的"用户名"替换为你的MySQL数据库用户名,"密码"替换为你的数据库密码,"数据库名"替换为你要备份的数据库名,同时将"C:\备份目录"替换为你希望将备份文件保存的目录。

保存文件时,将文件名命名为"backup.bat",确保文件扩展名为.bat。

二、创建计划任务接下来,我们需要创建一个计划任务,以便定期自动执行备份脚本。

按下Win + R组合键,打开"运行"对话框,输入"taskschd.msc"并点击"确定",打开"任务计划程序"。

在左侧面板中,点击"任务计划程序库"下的"创建任务"。

在弹出的对话框中,输入任务的名称,并在"配置为"下拉菜单中选择对应的Windows版本。

在"触发器"选项卡中,点击"新建",设置备份执行的时间和频率。

RMAN备份命令

RMAN备份命令

RMAN备份命令(转摘)1、切换服务器归档模式,如果已经是归档模式可跳过此步:%sqlplus /nolog (启动sqlplus)SQL> conn / as sysdba (以DBA身份连接数据库)SQL> shutdown immediate; (立即关闭数据库)SQL> startup mount (启动实例并加载数据库,但不打开)SQL> alter database archivelog; (更改数据库为归档模式)SQL> alter database open; (打开数据库)SQL> alter system archive log start; (启用自动归档)SQL> exit (退出)2、连接:%rman target=rman/rman@mydb (启动恢复管理器)3、基本设臵:RMAN> configure default device type to disk; (设臵默认的备份设备为磁盘) RMAN> configure device type disk parallelism 2; (设臵备份的并行级别,通道数)RMAN> configure channel 1 device type disk format '/backup1/backup_%U'; (设臵备份的文件格式,只适用于磁盘设备)RMAN> configure channel 2 device type disk format '/backup2/backup_%U'; (设臵备份的文件格式,只适用于磁盘设备)RMAN> configure controlfile autobackup on; (打开控制文件与服务器参数文件的自动备份)RMAN> configure controlfile autobackup format for device type disk to '/backu p1/ctl_%F'; (设臵控制文件与服务器参数文件自动备份的文件格式)4、查看所有设臵:RMAN> show all;5、查看数据库方案报表:RMAN> report schema;6、备份全库:RMAN> backup database plus archivelog delete input; (备份全库及控制文件、服务器参数文件与所有归档的重做日志,并删除旧的归档日志)7、备份表空间:RMAN> backup tablespace system plus archivelog delete input; (备份指定表空间及归档的重做日志,并删除旧的归档日志)_8、备份归档日志:RMAN> backup archivelog all delete input;9、复制数据文件:RMAN> copy datafile 1 to '/oracle/dbs/system.copy';10、查看备份和文件复本:RMAN> list backup;11、验证备份:RMAN> validate backupset 3;12、从自动备份中恢复服务器参数文件:RMAN> shutdown immediate; (立即关闭数据库)RMAN> startup nomount; (启动实例)RMAN> restore spfile to pfile '/backup1/mydb.ora' from autobackup; (从自动备份中恢复服务器参数文件)13、从自动备份中恢复控制文件:RMAN> shutdown immediate; (立即关闭数据库)RMAN> startup nomount; (启动实例)RMAN> restore controlfile to '/backup1' from autobackup; (从自动备份中恢复控制文件)13、恢复和复原全数据库:RMAN> shutdown immediate; (立即关闭数据库)RMAN> exit (退出)%mv /oracle/dbs/tbs_12.f /oracle/dbs/tbs_12.bak (将数据文件重命名)%mv /oracle/dbs/tbs_13.f /oracle/dbs/tbs_13.bak (将数据文件重命名)%mv /oracle/dbs/tbs_14.f /oracle/dbs/tbs_14.bak (将数据文件重命名)%mv /oracle/dbs/tbs_15.f /oracle/dbs/tbs_15.bak (将数据文件重命名)%rman target=rman/rman@mydb (启动恢复管理器)RMAN> startup pfile=/oracle/admin/mydb/pfile/initmydb.ora (指定初始化参数文件启动数据库)RMAN> restore database; (还原数据库)RMAN> recover database; (恢复数据库)RMAN> alter database open; (打开数据库)14、恢复和复原表空间:RMAN> sql 'alter tablespace users offline immediate'; (将表空间脱机) RMAN> exit (退出恢复管理器)%mv /oracle/dbs/users01.dbf /oracle/dbs/users01.bak (将表空间重命名) %rman target=rman/rman@mydb (启动恢复管理器)RMAN> restore tablespace users; (还原表空间)RMAN> recover tablespace users; (恢复表空间)RMAN> sql 'alter tablespace users online'; (将表空间联机)15、增量备份与恢复:第一天的增量基本备份:RMAN> backup incremental level=0 database plus archivelog delete input;第二天的增量差异备份:RMAN> backup incremental level=2 database plus archivelog delete input;第三天的增量差异备份:RMAN> backup incremental level=2 database plus archivelog delete input;第四天的增量差异备份:RMAN> backup incremental level=1 database plus archivelog delete input;第五天的增量差异备份:RMAN> backup incremental level=2 database plus archivelog delete input;第六天的增量差异备份:RMAN> backup incremental level=2 database plus archivelog delete input;第七天的增量差异备份:RMAN> backup incremental level=0 database plus archivelog delete input;增量恢复:RMAN> shutdown immediate;RMAN> exit%mv /oracle/dbs/tbs_12.f /oracle/dbs/tbs_12.bak%mv /oracle/dbs/tbs_13.f /oracle/dbs/tbs_13.bak%mv /oracle/dbs/tbs_14.f /oracle/dbs/tbs_14.bak%mv /oracle/dbs/tbs_15.f /oracle/dbs/tbs_15.bak%rman target=rman/rman@mydbRMAN> startup pfile=/oracle/admin/mydb/pfile/initmydb.oraRMAN> restore database;RMAN> recover database;RMAN> alter database open;Oracle备份与恢复案例一. 理解什么是数据库恢复当我们使用一个数据库时,总希望数据库的内容是可靠的、正确的,但由于计算机系统的故障(硬件故障、软件故障、网络故障、进程故障和系统故障)影响数据库系统的操作,影响数据库中数据的正确性,甚至破坏数据库,使数据库中全部或部分数据丢失。

windows应用场景下自动备份文件和文件夹的批处理脚本

windows应用场景下自动备份文件和文件夹的批处理脚本

windows应用场景下自动备份文件和文件夹的批处理脚本在Windows应用场景下,我们经常需要自动备份文件和文件夹。

这可以确保我们的数据安全,并且在意外情况下能够方便地恢复文件。

自动备份的一种简单有效的方法是使用批处理脚本。

本文将介绍如何编写并使用批处理脚本来实现自动备份。

一、创建批处理脚本首先,我们需要创建一个新的文本文件,为其命名为“backup.bat”。

确保文件扩展名为“.bat”。

然后,将以下代码复制粘贴到“backup.bat”文件中:```batch@echo offset source_path=C:\path\to\sourceset backup_path=C:\path\to\backupxcopy /E /C /I /H /R /K /Y %source_path% %backup_path%echo Backup completed.```在上述代码中,我们使用了xcopy命令来执行备份操作。

其中,“source_path”是要备份的文件或文件夹的路径,“backup_path”是备份存储的路径。

你需要根据实际情况修改这两个变量的值。

xcopy命令的选项解释:- /E:复制文件夹及其所有子文件夹和文件- /C:继续复制,即使出错- /I:如果目标是一个目录或包含有目录的文件,而且源文件不包含有目录,则复制的目标文件或目录将具有与源文件相同的文件名和目录路径- /H:复制文件和隐藏文件- /R:覆盖只读文件- /K:复制文件属性和时间戳- /Y:不提示确认覆盖二、使用批处理脚本进行备份完成批处理脚本的创建后,我们可以直接双击运行脚本文件,即可执行备份操作。

脚本将根据上述定义的源路径和备份路径来执行备份。

此外,如果希望脚本在后台默默执行,而不显示命令行窗口,可以将批处理脚本的扩展名从“.bat”修改为“.cmd”,并在脚本开头加入以下代码:```batch@echo off```这样脚本将在后台运行,而不会显示命令行窗口。

oracle数据库rman备份计划及恢复

oracle数据库rman备份计划及恢复

oracle数据库rman备份计划及恢复1.rman完全恢复的前提条件:历史的datafile,controlfile和spfile备份,加上完整的archivelog和完好的redolog。

2.rman备份脚本: a.RMAN 0级备份命令:run{allocate channel c1 type disk;allocate channel c2 type disk;allocate channel c3 type disk;backup incremental level 0 tag 'level0' format "E:\recovery_area\rfdb\rfdb\AUTOBACKUP\rman_dir\RFDB_level_0_%u_%s_%p" as compressed backupset database;sql "alter system archive log current";backup filesperset 3 format "E:\recovery_area\rfdb\rfdb\AUTOBACKUP\rman_dir\arch_%u_%s_%p_%c"archivelog all delete input; #备份归档可选,可以单独定期备份release channel c1;release channel c2;release channel c3;} b.RMAN 1级备份命令:run{allocate channel c1 type disk;allocate channel c2 type disk;allocate channel c3 type disk;backup incremental level 1 tag 'level1' format 'E:\recovery_area\rfdb\rfdb\AUTOBACKUP\rman_dir\RFDB_level_1_%u_%s_%p' as compressed backupset database;sql 'alter system archive log current';backup filesperset 3 format 'E:\recovery_area\rfdb\rfdb\AUTOBACKUP\rman_dir\arch_%u_%s_%p'archivelog all delete input; #备份归档可选,可以单独定期备份release channel c1;release channel c2;release channel c3;} c.rman删除备份命令(在保留最近⼀天备份的情况下,删除其他备份):DELETE NOPROMPT OBSOLETE RECOVERY WINDOW OF 1 DAYS; d.操作系统层⾯运⾏rman备份或删除命令(windows/linux):rman target sys/rf4rfvbgt56yhn@rfdb nocatalog CMDFILE 'D:\app\rman\rman_file\level_0.txt' log=E:\recovery_area\rfdb\rfdb\AUTOBACKUP\rman_dir\log\rman_level_0.log export ORACLE_BASE=/u01/app/oracleexport ORACLE_HOME=/u01/app/oracle/product/11.2.0/db1export ORACLE_SID=atestexport PATH=$ORACLE_HOME/bin:$PATHrman target sys/123456@atest nocatalog CMDFILE '/u01/rman/rman.sh' log=/u01/rman/rman.log00 02 * * 1 bash /u01/rman_file/run_rman_0.sh00 02 * * 3 bash /u01/rman_file/run_rman_0.sh00 02 * * 5 bash /u01/rman_file/run_rman_0.sh00 04 * * * bash /u01/rman_file/run_delete.sh34 11 * * * bash /u01/rman_file/run_rman_0.sh e.rman参数设置:RMAN> CONFIGURE CONTROLFILE AUTOBACKUP ON;RMAN> CONFIGURE DEFAULT DEVICE TYPE TO DISK;RMAN> CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE disk TO 2;RMAN> CONFIGURE ARCHIVELOG BACKUP COPIES FOR DEVICE TYPE disk TO 2;3.rman恢复a.拷贝datafile,controlfile和spfile的rman备份,以及完整的archivelog和完好的redolog⽂件到新的数据库。

RMAN备份

RMAN备份

使用RMAN备份DB一、建置环境与情境本文件说明使用RMAN由来源DB复制DB到另一台主机上。

测试的环境描述如下:1.来源和复制主机为相同平台和OS系统,OS:HP-UX,平台:Intel Itanium2.来源DB和复制DB的版本相同,皆为Oracle 10.2.0.4版3.来源DB和复制DB的SID和服务名称相同,SID:HPDEV2,服务名称:4.来源DB和复制DB都是使用ASM做为储存媒介,ASM内储存结构也相同,储存目录root都为+DATADG5.RMAN使用control纪录备份回、复信息如要参考此步骤进行复制,请先确认以上环境的差异,参考Backup and Recovery Advanced User’s Guide.pdf中13章部分和Backup and Recovery Reference.pdf手册进行修改。

在RMAN复制DB操作上,来源DB是以target DB连接,而复制DB则以auxiliary DB连接。

操作时请注意来源、复制DB和target DB、auxiliary DB间的关系,避免混淆。

二、复制DB步骤1.检查来源DB archive log mode使用RMAN复制DB必须先用RMAN备份来源DB,备份时请注意DB的archive log mode,如果为noarchive log模式,RMAN只能在DB为mount模式下备份,在备份时DB无法提供服务。

故如果DB无法容忍长时间停机,应先将RMAN切换为archive log mode,如此可以在DB open的状况下进行备份。

检查archive log可以用sqlplus以sys登入下以下指令查询:如需要修改可以下以下指令:shutdown immediate;startup mount;alter database archivelog; --或noarchivelogalter database open;设定完后可以重新以:archive log list;查询设定是否成功。

RMAN异地备份方案

RMAN异地备份方案

RMAN 本地数据库异地备份测试方案一.分析:RMAN并不支持客户端连接服务器进行备份,所以仍然需要在服务器上使用RMAN备份,客户要求备份至异地;二.环境:1.两台win2003 Enterprise edition:主机名si_vm_w2k3,ip:192.168.2.204;备机名PC2ip:192.168.2.2052.在si_vm_w2k3上和PC2上同时安装oracle 10.2.0.1.0;3.ORACLE_HOME=C:\oracle\product\10.2.0\db_1.ORADA TA=C:\oracle\product\10.2.0\oradata\lichao;三.操作步骤:1,在PC2上创建共享目录RMAN,在RMAN目录里建子目录logs,并授予administrator权限,保证administrator具备口令为Root1!口令不能为空;2,在si_vm_w2k3确保administrator的口令与PC2的administrator口令相同且为Root1!;3,在si_vm_w2k3映射\\PC2\RMAN目录为Z盘,并明确登录用户为administrator及口令;4,在si_vm_w2k3机器修改ORACLE的两个服务OracleTNSListerner和OracleServiceLICHAO为账户登录:用户名为administrator,口令为Root1!;5,重启si_vm_w2k3机器的两个服务;备份可以备份在本地,有必要时再传到PC2上。

创建复制数据库:1,创建口令文件orapwd file=c:\oracle\product\10.2.0\db_1\database\pwdlichao.ora password=admin entries=102,创建辅助数据库实例:Oradim –new –sid test4.配置监听程序在这里我们需要配置的监听有两个分别是原数据库和复制数据库的监听TEST实例的监听Listener.ora:SID_LIST_LISTENER =(SID_LIST =(SID_DESC =(GLOBAL_DBNAME = test)(ORACLE_HOME = C:\oracle\product\10.2.0\db_1)(SID_NAME = test)))LISTENER =(DESCRIPTION_LIST =(DESCRIPTION =(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.2.205)(PORT = 1521))))Tnsname.ora:lichao =(DESCRIPTION =(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.2.204)(PORT = 1521)) )(CONNECT_DATA =(SID = lichao)))test =(DESCRIPTION =(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.2.205)(PORT = 1521)) )(CONNECT_DATA =(SID = test)))lichao实例监听配置:Listener.ora:SID_LIST_LISTENER =(SID_LIST =(SID_DESC =(GLOBAL_DBNAME = test)(ORACLE_HOME = C:\oracle\product\10.2.0\db_1)(SID_NAME = lichao)))LISTENER =(DESCRIPTION_LIST =(DESCRIPTION =(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.2.204)(PORT = 1521))))Tnsname.ora:lichao =(DESCRIPTION =(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.2.204)(PORT = 1521)))(CONNECT_DATA =(SID = lichao)))test =(DESCRIPTION =(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.2.205)(PORT = 1521)))(CONNECT_DATA =(SID = test)))配置完监听记得重新启动监听的服务进程,并使用lsnrctl stop、lsnrctl start来重新启动监听5,创建辅助(复制)数据库的目录6,创建辅助(复制)数据库的参数文件主库执行Create pfile from spfile复制pfile到复制数据库,修改相关参数:Adump、bdump、cdump、udump、ddump、db_name和控制文件路径。

RMAN的备份与恢复步骤详解

RMAN的备份与恢复步骤详解

RMAN的备份与恢复步骤详解RMAN(Recovery Manager)是Oracle数据库备份和恢复技术的核心工具,提供了一种集中管理和自动化备份和恢复操作的方式。

下面将详细介绍RMAN的备份与恢复步骤。

备份步骤:1.配置RMAN环境:确定RMAN备份目标、备份库、目标库的连接信息,并设置环境变量。

2.创建RMAN备份目标:使用CREATECATALOG命令创建RMAN备份目标,以存储备份信息和恢复目标的元数据。

3.创建备份策略:确定备份类型(完全备份、增量备份、增量备份级别等),备份周期(每日、每周)、备份级别(全局备份、局部备份)以及备份介质(磁盘、磁带)等。

4.执行备份命令:使用BACKUP命令执行备份操作。

根据备份策略选择相应的备份类型,并指定备份集的存储位置。

可以使用全量备份、增量备份或归档日志备份等方式进行备份。

5.备份验证和测试:使用RESTORE命令验证备份集是否可恢复。

可以恢复到测试库中,检查数据的完整性以及备份恢复的过程和时间。

恢复步骤:1.准备恢复环境:确定系统状态,关闭数据库、归档日志模式,备份控制文件,以备份增量恢复,恢复目标数据库的连接信息,并设置环境变量。

2.恢复控制文件:将备份的控制文件还原到指定位置,以获取数据库的结构信息。

3.恢复数据库文件:使用RESTORE命令恢复需要的数据文件。

可以选择完全恢复(使用全量备份和归档日志进行恢复)、增量恢复(使用增量备份和归档日志进行恢复)或点恢复(使用时间点或SCN号进行恢复)的方式。

4.打开数据库:使用OPENRESETLOGS命令打开数据库,恢复数据库文件到最新的状态。

5.检查恢复结果:验证恢复后数据库的完整性和一致性。

使用相应的SQL语句检查数据的正确性、索引的可用性和对象的有效性。

常见问题处理:1.恢复失败的处理:RMAN提供了很多失败后的处理命令,比如RECOVER命令来恢复损坏的数据文件,CROSSCHECK命令来检查备份文件的完整性等。

一步一步学RMAN完整版

一步一步学RMAN完整版

一步一步学rman进入rmanrman命令知多少rman备份演练初级篇rman备份演练进阶篇rman外传-基础资料篇1实战rman备份rman外传-基础资料篇2演练rman恢复实战rman恢复(1)丢失控制文件的恢复实战rman恢复(2)恢复到异机rman笔记之综述一、连接本地数据库通过rman连接本地数据库非常简单,以windows平台为例,进入到命令提示符界面:C:\Documents and Settings\Administrator>set oracle_sid=jsswebC:\Documents and Settings\Administrator>rman target /恢复管理器: 版本9.2.0.1.0 - ProductionCopyright (c) 1995, 2002, Oracle Corporation. All rights reserved.连接到目标数据库: JSSWEB (DBID=3391142503)RMAN>注:如果本地库只有一个实例,则不需要指定oracle_sid。

Rman会自动连接到默认实例。

当然,你也可以先启动rman,然后再通过connect来连接目标数据库,如下:C:\Documents and Settings\Administrator>set oracle_sid=jsswebC:\Documents and Settings\Administrator>rman恢复管理器: 版本9.2.0.1.0 - ProductionCopyright (c) 1995, 2002, Oracle Corporation. All rights reserved.RMAN> connect target /连接到目标数据库: JSSWEB (DBID=3391142503)RMAN>二、连接远程数据库如果要连接的目标数据库是一个远程数据库,那么必须在建立连接时指定一个有效的网络服务名,同时你本地的tnsname.ora文件中也必须已经建立了该网络服务名的正确配置。

windows-下的oracle数据库rman自动备份和恢复文档精选全文完整版

windows-下的oracle数据库rman自动备份和恢复文档精选全文完整版

可编辑修改精选全文完整版数据库rman备份恢复文档一.Rman简介RMAN是ORACLE提供的恢复和备份工具,是随Oracle服务器软件一同安装的工具软件,它可以用来备份和恢复数据库文件、归档日志和控制文件,用来执行完全或不完全的数据库恢复。

与传统工具相比,RMAN具有独特的优势:跳过未使用的数据块。

当备份一个RMAN 备份集时,RMAN不会备份从未被写入的数据块,而传统的方式无法获知那些是未被使用的数据块。

RMAN使用Oracle特有的二进制压缩模式,与传统备份的压缩方式相比,能够最大程度地压缩数据块中的一些典型数据。

二.系统规划数据库备份文件不建议与系统盘(C盘)、oracle数据文件存放盘(D 盘)存放在一起,本文单独存放于E盘。

注:在进行以下操作前要根据自己的环境建立如下目录“E:\orabackup\”,“’E:\archivelog_backup”,“E:/orabackup_script/”。

本文用到的命令中的标点均为英文字符下的标点。

三.设置oracle数据库为归档模式(ARCHIVELOG)按以下步骤操作,检查oracle数据库是否为归档模式。

1.选择“开始”→“系统”→“运行”,输入cmd,按回车。

2.输入“sqlplus”,按回车。

3.输入“system / as sysdba ”,按回车。

4.输入数据库system账号的密码,按回车。

5.查看数据库归档模式,输入“archive log list;”,按回车。

如下图所示。

如果“数据库日志模式”为“非存档模式”,则需按照如下步骤开启归档模式:1.设置数据库日志归档路径。

输入“alter system set log_archive_dest=’E:\archivelog_backup’ scope=spfile; ”,按回车。

2.关闭数据库。

输入“shutdown immediate;”,按回车。

3. 启动数据库到mount状态。

RMAN地备份与恢复步骤详解

RMAN地备份与恢复步骤详解

RMAN地备份与恢复步骤详解RMAN(Recovery Manager)是Oracle数据库中用于备份和恢复数据的工具。

RMAN提供了一种灵活、高效的备份和恢复机制,可以帮助数据库管理员有效地管理数据库的备份和恢复工作。

在本文中,我们将详细介绍RMAN备份与恢复的步骤和操作方法。

备份步骤:1.配置RMAN环境:在开始进行RMAN备份之前,首先需要配置RMAN环境。

这包括设置RMAN的环境变量、创建RMAN的配置文件以及配置RMAN的连接信息等操作。

您可以使用RMAN命令行或者RMAN配置助手来完成这些操作。

2.创建备份任务:在配置好RMAN环境之后,可以通过RMAN命令行或者RMAN配置助手来创建备份任务。

您可以选择全量备份、增量备份或者归档日志备份等不同类型的备份任务。

3. 执行备份任务:一旦创建了备份任务,就可以使用RMAN命令来执行备份任务。

您可以使用“backup database”命令来执行全量备份任务,使用“backup incremental”命令来执行增量备份任务,使用“backup archivelog”命令来执行归档日志备份任务等。

4. 监控备份过程:在执行备份任务的过程中,可以使用RMAN命令来监控备份的进度和状态。

您可以使用“show”命令来查看备份任务的进度、使用“list”命令来列出备份文件的信息等。

5. 完成备份任务:一旦备份任务执行完毕,可以使用RMAN命令来验证备份文件的完整性和一致性。

您可以使用“crosscheck”命令来验证备份文件的状态,使用“delete”命令来删除过期的备份文件等。

恢复步骤:1.配置RMAN环境:在开始进行RMAN恢复之前,需要先配置好RMAN的环境。

确保RMAN的环境变量、配置文件和连接信息都已经设置好。

2. 恢复数据库:如果数据库遇到了故障或者数据丢失的情况,可以使用RMAN命令来恢复数据库。

您可以使用“restore database”命令来还原数据库的备份文件,使用“recover database”命令来恢复数据库的数据文件。

oracle—rman备份使用方法

oracle—rman备份使用方法

RMAN(Recovery Manager)是Oracle数据库的备份和恢复工具,提供了强大的备份、恢复和数据库复制功能。

以下是使用RMAN进行备份的基本步骤:
1. 连接到 RMAN:
通过命令行或脚本连接到 RMAN。

在命令行中输入:
这会使用操作系统认证连接到默认的本地数据库实例。

2. 设置备份配置参数:
在 RMAN 中,您可以设置各种备份配置参数,例如备份类型、备份目标、备份文件位置等。

以下是一个设置备份参数的示例:
这将启用自动备份控制文件和配置备份文件的保存路径。

3. 执行备份:
执行备份命令以创建数据库备份。

以下是创建全库备份的示例:
您还可以根据需要选择性地备份表空间、数据文件等。

4. 查看备份:
您可以使用以下命令查看备份信息:
这将显示当前配置的备份。

5. 恢复数据库:
如果需要进行恢复,您可以使用 RMAN 执行还原和恢复操作。

以下是一个简单的例子:
这将还原数据库文件并应用必要的日志以完成数据库的恢复。

6. 退出 RMAN:
完成备份和恢复操作后,使用以下命令退出 RMAN:
这是一个基本的 RMAN 备份和恢复过程。

请注意,在实际环境中,您可能需要根据数据库的具体要求和策略进行更复杂的备份和恢复配置。

请参考 Oracle 官方文档以获取更详细的信息和高级用法。

第十一章 使用RMAN实现异机备份恢复(WIN平台

第十一章 使用RMAN实现异机备份恢复(WIN平台

使用RMAN实现异机备份恢复(WIN平台)分类:RMAN 备份恢复2011-07-27 20:52 397人阅读评论(0) 收藏举报--=================================-- 使用RMAN实现异机备份恢复(WIN平台)--=================================在有些情况下,如数据库服务器处于磁盘空间的压力或成本控制需要将数据文件备份到异机,使用RMAN可以完成该工作。

基于Windows平台所需完成的配置相对简单,仅仅是添加账户与使用新增的帐户来启动数据库服务以及设置共享路径。

下面给出具体描述。

一、配置数据库服务器与备份目的主机1. 帐户配置(假定有主机A,B 且A为数据库服务器,B为备份目的主机,且能互相ping通)如果主机A与主机B使用的Administrator密码相同,且A上的OracleServiceDBNAME服务和OracleOraHome92TNSListener服务都以"本地系统账户登陆"如果主机A与主机B使用不同的Administrator密码,处于安全考虑不宜设为相同,则则可以分别在主机A与主机B上新建一用户,假定在主机A上建立DBA_oracle,密码为ORA_PWD,则在主机B上也建立该用户(用户名可以不同,密码必须相同),密码同样设置为ORA_PWD。

将刚建好的用户在各自主机将其加入到Aministrators组2. 设定OracleServiceDBNAME服务和OracleOraHome92TNSListener服务的启动帐户。

在运行处输入services.msc。

在主机A上设定使用此帐户登陆,即使用刚刚建立的DBA_oracle,输入密码启动,该设置需要重启后有效3. 在主机B上设定共享文件夹,如RMAN_Shared,设置其权限为完全控制(在A上使用\\IP\RMAN_Shared测试是否可写入文件)二、查看RMAN的配置与数据库情况[sql]view plaincopyprint?1.RMAN> show CONTROLFILE AUTOBACKUP;2.3.RMAN 配置参数为:4.CONFIGURE CONTROLFILE AUTOBACKUP ON; -->控制文件自动备份,建议开启5.6.RMAN> show CONTROLFILE AUTOBACKUP FORMAT;7.8.RMAN 配置参数为:9.CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '\\192.168.1.151\RMAN_Shared\CONTROL10._%F'; -->控制文件备份位置11.12.RMAN> show SNAPSHOT CONTROLFILE NAME;13.14.RMAN 配置参数为:15.CONFIGURE SNAPSHOT CONTROLFILE NAME TO 'D:\ORACLE\ORA92\DATABASE\SNCFTESTHH.ORA'; # default -->快照控制文件位置16.17.SQL> select * from v$version; -->数据库的版本,当前演示环境为Oracle 9i18.19.BANNER20.----------------------------------------------------------------21.Oracle9i Enterprise Edition Release 9.2.0.1.0 - Production22.PL/SQL Release 9.2.0.1.0 - Production23.CORE 9.2.0.1.0 Production24.TNS for 32-bit Windows: Version 9.2.0.1.0 - Production25.NLSRTL Version 9.2.0.1.0 - Production26.27.SQL> show parameter db_name28. TYPE VALUE30.------------------------------------ ----------- ---------------31.db_name string testHH1.D:\>rman target robinson/robin@testhh cmdfile=D:\oracle\oradata\testHH\backup.rman log=D:\oracle\ora2.data\testHH\backup.log1.SQL> shutdown immediate;2.数据库已经关闭。

rman备份策略

rman备份策略

rman备份策略配置控制文件保留时间为14天,这里的例子是保持7天的备份。

alter system set CONTROL_FILE_RECORD_KEEP_TIME = 14 scope=both;配置rman的保留策略为保留7天,这是为了删除多余的备份。

具体含义是保留能恢复到7天前所有的必须的备份。

CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 7 DAYS;07/03 - 0 level backup (星期天)07/04 - 1 level backup07/05 - 1 level backup07/06 - 1 level backup07/07 - 1 level backup07/08 - 1 level backup07/09 - 1 level backup07/10 - 0 level backup (星期天)07/11 - 1 level backup07/12 - 1 level backup07/13 - 1 level backup --current day如果今天是07/13,那么需要保留能恢复到07/06的所有的备份。

07/06的备份时1 level backup,恢复时需要从0 level backup开始,所以需要保留07/03的0 level backup。

配置block change tracking, 这个功能是10g引入的,在增量备份时,只扫描那些更改的块。

启用这个功能需要观察是否影响数据库的性能。

alter database enable block change tracking;select * from v$block_change_tracking;下面的算法是计算block change tracking文件的大小。

SELECT(((SELECT SUM(ceil(bytes /(7686 * 1024 * 1024))) * 8 bitmap_extFROM v$datafile) +(SELECT ceil(VALUE / 252) file_descr_extFROM v$parameterWHERE name = 'db_files') + 1)* 32 + 1088) / 1024 bct_file_size_mbFROM dual;这个功能相应的等待事件:select * from v$system_event where lower(event) like '%track%'change tracking file synchronous readchange tracking file synchronous writeblock change tracking buffer spaceBCT只支持8 versions的tracking,如果增量备份超过了8次,那么在增量备份时,需扫描整个数据库。

RMAN备份介绍

RMAN备份介绍

RMAN备份介绍RMAN备份【官⽅⽂档】 Backup and Recovery Reference Backup and Recovery User's Guide1 备份⽂件类型1.1 backupset备份集 不备份datafile⾥⾯从未使⽤块、可以实现增量备份(可以备份到disk和tape)。

可以使⽤压缩,如果只启⽤⼀个channel,默认会把所有备份的datafile放⼊到⼀个backupset⾥,并且⽣成⼀个备份⽚backup piece 使⽤section size时,⼀个backupset中可以包含多个backup piece1.1.1 备份全库① RMAN> backup database format='/u01/backup/rman/prod_%s.bak' filesperset 3;② RMAN> backup database plus archivelog delete input;说明:备份所有数据⽂件及控制⽂件、spfile⽂件与所有归档⽇志,并删除旧的归档⽇志,当deleteinput后,控制⽂件相关信息(v$archived_log)也会被更新。

archivelog物理⽇志也被删除③ RMAN> backup database format '/u01/backup/rman/%U.bak' plus archivelog delete input skip inaccessible;说明:archivelog的备份是根据控制⽂件中(v$archived_log)中的内容导航的,如果控制⽂件中记录了⽽实际归档中⼜不存在,则会报错,skip inaccessible的含义是跳过物理上缺失的⽇志⽂件因为有了全备,随时可以还原备份,还原点之前的归档⽇志可以删除,如果想单独还原归档⽇志备份可以使⽤:restore archivelog all; 1.1.2 备份表空间RMAN> backup tablespace users format '/u01/backup/rman/users_%U.bak' tag=userbak;1.1.3 备份数据⽂件RMAN> backup datafile 3,5 format '/u01/backup/rman/%d_%s.bak';备份数据⽂件,可以⼀次备份多个,以“,” 分开1.1.4 备份归档⽇志查看当前数据库中归档⽇志RMAN> list archivelog all;备份所有归档⽇志,备份完成后删除库⾥的归档⽇志⽂件RMAN> backup archivelog all delete input;将归档⽇志⽂件从备份转储回库中RMAN> restore archivelog all;1.1.5 备份控制⽂件RMAN> backup current controlfile;1.1.6 备份参数⽂件RMAN> backup spfile;1.2 image copy(映像⽂件)备份1.2.1 image copy(映像⽂件) 实际上和⼿⼯cp类似的,备份datafile所有的数据块,不能作为增量备份的基础(即0级增量备份),只能备份到disk,不能备份到tape,优点是可以省略还原步骤,恢复数据库速度快1.2.2 语法① RMAN> copy datafile 4 to '/u01/backup/rman/users_%s.bak';② RMAN> backup as copy tablespace 'TEST' format '/u01/backup/rman/%d_test_%s.bak';建议使⽤backup语法,统⼀格式backup as copy database format '/u01/backup/rman/%U.bak';list datafilecopy all;删除delete datafilecopy all;2 rman冷热备脚本参考2.1 rman冷备脚本vi /u01/backup/rman/cold.sql写⼊脚本:run{shutdown immediate;startup mount;allocate channel c1 device type disk;allocate channel c2 device type disk;backup database format '/u01/backup/rman/db_%d_%T_%U.bak';backup current controlfile format '/u01/backup/rman/ctl_%d_%T_%U.bak';alter database open;release channel c1;release channel c2;}2.2 rman热备vi /u01/backup/rman/hot.sql写⼊脚本:run{allocate channel c1 device type disk;allocate channel c2 device type disk;backup database format '/u01/backup/rman/db_%d_%T_%U.bak' plus archivelog format '/u01/backup/rman/ar_%d_%T_%U.bak';backup current controlfile format '/u01/backup/rman/ctl_%d_%T_%U.bak';release channel c1;release channel c2;}3 增量备份incremental backup【官⽅⽂档】 Database Backup and Recovery User's Guide ---> 8 RMAN Backup Concepts ---> Incremental Backups3.1 概念 只备份⾃某次备份以来发⽣变化的block。

批处理脚本自动清理Windows更新安装备份文件

批处理脚本自动清理Windows更新安装备份文件

批处理脚本自动清理Windows更新安装备份文件在使用Windows操作系统时,经常会进行系统更新以修复漏洞和改进性能。

然而,随着时间的推移,这些更新会占用大量的磁盘空间,因为Windows会自动保留更新的备份文件。

如果不定期清理这些备份文件,磁盘空间可能会迅速被占满,导致系统运行缓慢。

为了解决这个问题,我们可以编写一个批处理脚本来自动清理Windows更新安装备份文件。

下面是一个示例批处理脚本:@echo offREM 清理Windows更新安装备份文件REM 设置删除条件set "Folder=C:\Windows\SoftwareDistribution\Download"set "FileAge=7"REM 判断文件夹是否存在if not exist "%Folder%" (echo 文件夹不存在,退出脚本。

exit /b)REM 清理过期的备份文件forfiles /p "%Folder%" /s /m * /d -%FileAge% /c "cmd /c del @path /q"echo 清理完成。

请将上述代码复制到一个新建的文本文件中,并将文件后缀名更改为“.bat”。

然后,双击运行该批处理脚本,它会自动清理指定目录下的过期备份文件。

以上脚本的工作原理如下:1. 使用@echo off命令关闭脚本的输出信息显示,使脚本运行时不会在命令行窗口中显示执行过程。

2. 使用set命令设置删除条件。

将“Folder”变量设置为指定备份文件所在的文件夹路径,将“FileAge”变量设置为你想保留的备份文件的天数。

3. 使用if not exist命令判断文件夹是否存在,如果不存在则退出脚本。

4. 使用forfiles命令遍历指定文件夹及其子文件夹下的所有文件。

5. 使用/d参数指定文件的日期条件,-FileAge表示更早于指定天数的文件。

rman ora-19504

rman ora-19504

一客户目前正在上IBM TSM的项目,现在要求临时用RMAN将生产库的数据备份到本地,rman常规备份很简单,给了客户如下的脚本:run{allocate channel c1 type disk;allocate channel c2 type disk;backup full tag …dbfull‟ format …/oracle/app/backup/full%Y_%M_%t_A‟ database;sql …alter system archive log current‟;backup filesperset 3 format …/oracle/app/backup/arch%Y_%M_%t_A‟ archivelog all;release channel c1;release channel c2;}但昨天收到客户电话说备份有点问题,出错信息如下:released channel: c1released channel: c2RMAN-00571:===========================================================RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS===============RMAN-00571:===========================================================RMAN-03002: failure of release command at 08/01/2009 17:12:44RMAN-06012: channel: c2 not allocated系统提示没有分配channel c2,报要创建的文件已经存在,我在虚拟机分别在9i、10g的环境中测试也有类似的错误:9i:RMAN-00571:===========================================================RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS===============RMAN-00571:=========================================================== RMAN-03009: failure of backup command on c1 channel at 08/04/2009 09:27:03ORA-19504: failed to create file “/home/oracle/backup/arch2009_08_693998821″ORA-27038: skgfrcre: file exists10g:RMAN-00571:===========================================================RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS===============RMAN-00571:=========================================================== RMAN-03009: failure of backup command on c1 channel at 08/04/2009 08:34:43ORA-19504: failed to create file “/home/oracle/backup/full2009_08_A”ORA-27038: created file already exists这个问题第一次在客户的测试机上执行是成功的,第二次报错,在我自己测试的时候,全新安装的ORACLE也有这样的问题,为什么会出现这样的问题,请看下面的分析:1.错误中指定要创建的文件已经,而实际上是并不存在,也没有用先前的备份的数据恢复过数据库。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

、每天夜间1点执行;
2、数据库全备,同时备份控制文件及归档日志文件,备份文件保存至:D:\backup\目录下,并在完成归档日志文件备份后,自动删除已备份的归档日志;
3、备份保留7天,过期则自动删除;
4、保留操作日志备查;
以Windows环境为例(linux环境下与此基本类似,rman的脚本您甚至连改都不用改,就把调用rman脚本的命令行改改就行了):
1、编写rman批处理文件
保存至:E:\oracleScript\backup\database_backup_jssweb.rman
RUN {
CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 7 DAYS;
CONFIGURE CONTROLFILE AUTOBACKUP ON;
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO
'd:/backup/%F';
ALLOCATE CHANNEL CH1 DEVICE TYPE DISK FORMAT 'd:/backup/%U';
BACKUP DATABASE SKIP INACCESSIBLE FILESPERSET 10
PLUS ARCHIVELOG FILESPERSET 20
DELETE ALL INPUT;
RELEASE CHANNEL CH1;
ALLOCATE CHANNEL FOR MAINTENANCE DEVICE TYPE DISK;
CROSSCHECK BACKUPSET;
DELETE NOPROMPT OBSOLETE;
SKIP选项说明
SKIP INACCESSIBLE:表示跳过不可读的文件。

我们知道一些offline的数据文件只要存在于磁盘上就仍然可被读取,但是可能有些文件已经被删除或移到它处造成不可读,加上这个参数就会跳过这些文件;
SKIP OFFLINE:跳过offline的数据文件;
SKIP READONLY:跳过那些所在表空间为read-only的数据文件;
注意哟,你从网上搜索rman备份脚本,可能有些脚本中会出现一项:sql 'alter system archive log current';这句是让archivelog日志归档,实际上完全没必要,我们在第三节的时候讲过,通过plus archivelog方式备份时,rman会自动对当前的archivelog进行归档。

2、编写dos批处理
保存至:E:\oracleScript\backup\database_backup_jssweb.bat
设定要备份的数据库sid为jssweb,将日志按照日期输出到E:\oracleScript\backup\logs\目录。

set oracle_sid=jssweb
rman target / msglog E:\oracleScript\backup\logs\%date:~0,10%.log
cmdfile=E:\oracleScript\backup\database_backup_jssweb.rman
3、设定执行计划
控制面板->任务计划中添加计划,运行E:\oracleScript\backup\database_backup_jssweb.bat,设定日程安排中的时间。

说是实战,实际上演练的味道依然浓厚,谁让咱这是在测试泥。

上述脚本已初具雏形,当然还应该再增加一些更合理的配置,比如根据您的数据库大小,适当调整通道数量,以及加上日期的判断,根据时间进行增量备份(关于增量备份,限于篇幅这里不介绍,
如数据库在体积上都属于小型数据库(不超10G),即使每次备份都是全备也是可以接受的,所以在备份策略上能够非常灵活,或者说随意。

对于那些数百G甚至过T的数据库,我想就需要很是花些心思来考虑备份策略的问题了,备份不仅仅只是在数据库崩溃时才会用到,备份是为了更好的恢复。

所以我想做好备份与恢复之间开销的平衡应该是所有备份策略的终极目标。

相关文档
最新文档