1.关于RMAN备份的相关参数介绍:
命令行参数 |
描述 |
TARGET |
为目标数据库定义的一个连接字符串,当连接到一个目标数据库时,该连续是SYSDBA连接。该用户拥有启动和关闭数据库的权利,必须属于OSDBA组,必须建立一个口令文件允许SYSDBA连接。 |
CATALOG |
连接到恢复目录。 |
NOCATALOG |
不运用恢复目录。与CATALOG参数互斥 |
CMDFILE |
定义了输出命令文件名称的字符串。当运行RMAN时,可以运行命令文件或者交互式运行 |
LOG & MSGLOG |
定义了包含RMAN输出信息的文件的字符串,LOG参数只能特别运用在命令行中。不能在RMAN中启动SPOOLING,当应用日志文件时,输出的信息并不在屏幕上显示 |
TRACE |
类似于log参数,将产生一个显示RMAN输入信息的文件。使用TRACE在屏幕上也显示。 |
APPEND |
特殊用法,如果消息日志文件存在则将消息追加到该文件中。经常与LOG联合使用 |
- 数据库OPEN时归档模式下RMAN可以备份。
- 数据库OPEN时非归档模式下RMAN只能备份READ ONLY或OFFLINE有表空间或数据文件。
- 归档模式下RMAN全库备份时:
- 在数据库OPEN、MOUNT阶段都可以备份。数据库实例未启动,或者启动到NOMOUNT状态均不能备份。
- 非归档模式下RMAN全库备份时:
- 只能在MOUNT状态下备份。
2.差异备份方法:
1)新建一个.bat文件(本处新建的为arch_rman.bat)
rman target / cmdfile=D:softwaresoftoracle_clientak_20171212arch_rman.sql log
D:softwaresoftoracle_clientak_20171212arch%date:~0,4%%date:~5,2%%date:~8,2%-%time:~0,2%%time:~3,2%.log
2) 新建一个.sql文件(本处新建的为arch_rman.sql)
list backup; report obsolete; delete obsolete; run { backup incremental level=1 tag 'bys001-1' database format 'D:softwaresoftoracle_clientak_20171212orclfullback_%d_%t_%s' plus archivelog format 'D:softwaresoftoracle_clientak_20171212orclarch_%d_%t_%s' delete all input; } exit
代码解释:
- report obsolete:命令用于列出rman资料库中能够被删除的全备份、数据文件拷贝和归档日志记录。
- backup incremental level=1 tag 'bys001-1' database:
3)定时任务
cmd 下 执行 taskschd.msc ,进入到windows的任务计划界面,创建一个基本任务
3.恢复备份:
1)基于时间点的数据库恢复
restore database until time "to_date('2017-12-15','YYYY-MM-DD')";
执行后报错:
错误原因:恢复时DATABASE 应该处于MOUNT 状态;
对应的解决办法:1.shutdown immediate;
2.startup mount;