1、Windows下oracle地增量备份与恢复Windows下Oracle11g增量备份与恢复安装环境:Windows Server 2008 64位 sp2Oracle版本:Oracle 11g文档版本: V1.1发布日期:2014/12/01作者:春醒数码视讯科技股份Windows下Oracle增量备份与恢复 11 实现目标 22 备份计划与恢复策略 23 步骤一:把Oracle切换到归档模式 23.1 查看归档模式 23.2 启用归档模式 24 步骤二:创建备份脚本 34.1 创建“完全”备份脚本 34.2 创建“差异”备份脚本 34.3 创建“累计”备份脚本 35 步骤三:手工启动一次完
2、全备份 45.1 手工执行rmanbackup_full.bat 45.2 文件管理器中,查看生成的备份文件 45.3 使用rman命令查看备份信息 45.4 若想删除,可使用delete backup指令 56 步骤四:创建备份计划任务 56.1 计划任务的时间安排 56.2 创建一个计划任务 66.2.1 打开控制面板-管理工具-任务计划程序 66.2.2 创建基本任务 76.2.3 选择每周 76.2.4 选择星期一23:00 86.2.5 选择启动程序 86.2.6 选择执行D:rmanbackup_full.bat 96.2.7 最终信息确认,正确,点击完成。 116.2.8 打开属
3、性对话框。 126.2.9 选择“不管用户是否登陆都要运行”,勾选“不存储密码”,确定。 136.3 建议立即进行测试 136.4 创建其他计划任务 137 如何恢复数据库 137.1 尽力对整个数据库进行完全恢复 147.2 恢复到历史中的一个备份 141实现目标备份数据库到指定硬盘,最坏的情况下,允许丢失一天的数据。2备份计划与恢复策略假定数据库的备份任务作如下安排:- 星期一:完全备份(A) - 星期二:增量备份(B) - 星期三:增量备份(C) - 星期四:增量备份(D) - 星期五:累计备份(E) - 星期六:增量备份(F) - 星期日:增量备份(G) 假设在星期日,数据库遭到意外破
4、坏,数据库管理员可按以下步骤来恢复数据库:第一步:用命令CREATE DATABASE重新生成数据库结构第二步:创建一个足够大的附加回段第三步:完全增量导入A (恢复数据库必须要存在一个完全增量备份)第四步:累计增量导入E第五步:最近增量导入F3步骤一:把Oracle切换到归档模式非归档模式下,无法使用增量备份!3.1查看归档模式sqlplus / as sysdba (cmd下输入此命令,不要省略/前后的空格!)SQL archive log list;3.2启用归档模式 sqlplus / as sysdbaSQL shutdown immediate; (立即关闭数据库)SQL star
5、tup mount (启动实例并加载数据库,但不打开)SQL alter database archivelog; (更改数据库为归档模式)SQL alter database open; (打开数据库)SQL alter system archive log start; (启用自动归档)(注意:一般修改归档模式后,需要做一次完全备份,因为归档前的日志已经没用了。我们这儿暂时不做,等到配置完计划任务后,再做完全备份)SQL exit; 4步骤二:创建备份脚本压缩包中已经提供以下3个txt文件 + 3个bat文件,懒人可直接使用,注意文件路径。请手工创建D:backup文件夹!4.1创建“完全
6、”备份脚本 即备份整个数据库。 创建文件:d:rmanbackup_full.txt (文件路径和名称都可以自拟) 容:runbackup incremental level 0 database format D:/backup/backup_%d_%T_%s; 创建文件:d:rmanbackup_full.bat (文件路径和名称都可以自拟) 容:rman target / nocatalog CMDFILE d:/rmanbackup_full.txt LOG d:/rmanbackup_%DATE:0,4%_%DATE:5,2%_%DATE:8,2%.log;4.2创建“差异”备份脚本
7、 备份上一次备份后改变的数据。 创建文件:d:rmanbackup_incremental.txt (文件路径和名称都可以自拟) 容:runbackup incremental level 1 database format D:/backup/backup_%d_%T_%s; 创建文件:d:rmanbackup_incremental.bat (文件路径和名称都可以自拟) 容:rman target / nocatalog CMDFILE d:/rmanbackup_incremental.txt LOG d:/rmanbackup_%DATE:0,4%_%DATE:5,2%_%DATE:8
8、,2%.log;4.3创建“累计”备份脚本 累计型导出方式只是导出自上次“完全”导出之后数据库中变化了的信息。 创建文件:d:rmanbackup_cumulative.txt (文件路径和名称都可以自拟) 容:runbackup incremental level 1 cumulative database format D:/backup/backup_%d_%T_%s; 创建文件:d:rmanbackup_cumulative.bat (文件路径和名称都可以自拟) 容:rman target / nocatalog CMDFILE d:/rmanbackup_cumulative.txt
9、 LOG d:/rmanbackup_%DATE:0,4%_%DATE:5,2%_%DATE:8,2%.log;5步骤三:手工启动一次完全备份5.1手工执行rmanbackup_full.bat D:rmanbackup_full.bat 5.2 文件管理器中,查看生成的备份文件5.3 使用rman命令查看备份信息rman target / (cmd命令行下输入此命令)RMANlist backup;5.4 若想删除,可使用delete backup指令6步骤四:创建备份计划任务6.1计划任务的时间安排我们创建7个计划任务,分别对应以下时间点。假定任务执行时间是每天晚上23:00.- 星期一:
10、完全备份(A) - 星期二:增量备份(B) - 星期三:增量备份(C) - 星期四:增量备份(D) - 星期五:累计备份(E) - 星期六:增量备份(F) - 星期日:增量备份(G) 6.2创建一个计划任务6.2.1打开控制面板-管理工具-任务计划程序6.2.2创建基本任务6.2.3选择每周6.2.4选择星期一23:006.2.5选择启动程序6.2.6选择执行D:rmanbackup_full.bat6.2.7最终信息确认,正确,点击完成。6.2.8打开属性对话框。6.2.9选择“不管用户是否登陆都要运行”,勾选“不存储密码”,确定。6.3建议立即进行测试 为了测试上述建立的计划任务,需把计划
11、任务的执行时间,改到当天当前时间后的2分钟左右。然后注销计算机,等待5分钟。 5分钟后,登陆计算机,查看刚才的计划任务执行是否成功,有没有生成备份的数据库文件。 测试后,请把计划任务的时间,复原。6.4创建其他计划任务请模仿以上步骤,继续创建其他6个计划任务。7如何恢复数据库7.1尽力对整个数据库进行完全恢复本操作,恢复到数据库崩溃前的那个点。若数据库没有错误,该命令执行后,没有任何效果。rman target / (命令行下输入此命令)rmanshutdown immediate; (立即关闭数据库)rmanstartup mount; (启动实例并加载数据库,但不打开)rmanrestor
12、e database; rmanrecover database; rmanalter database open;7.2恢复到历史中的一个备份rman target / (命令行下输入此命令)rmanshutdown immediate; (立即关闭数据库)rmanstartup mount; (启动实例并加载数据库,但不打开)RMAN run set until time to_date(2014-07-03 19:04:00,yyyy-mm-dd hh24:mi:ss);restore database;recover database;alter database open resetlogs;
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1