12、备份与恢复ing
程序员文章站
2024-01-30 21:35:04
...
连接目标数据库: 1、运行命令中输入:rman target sys/nocatalog。 2、rman命令后:connect target sys/password@127.0.0.1/orcl --@后跟网络地址访问远程数据库。 dos控制台中输入:show all; 查看RMAN配置参数。 通过configure命令修改参数(通过clear 关
连接目标数据库:
1、运行命令中输入:rman target sys/nocatalog。
2、rman命令后:connect target sys/password@127.0.0.1/orcl --@后跟网络地址访问远程数据库。
dos控制台中输入:show all; 查看RMAN配置参数。
通过configure命令修改参数(通过clear 关键字恢复默认值)
configure retention policy clear; --恢复默认
list backup of database; --查看建立的备份集和备份片段。
list backup of tablespace tablespace_name; --表空间备份信息查看。
list backup of controlfile; --控制文件的备份信息。
list backup of archivelog all; --归档日志文件备份信息。
一、备份
1、手动分配通道
rman中输入脚本
run{
allocate channel ch1 device type disk
format='d:\oracle_bak\rmanBakTest\Jangle_%Y_%M_%D'
backup tablespace jangle channel ch1;
}
2、自动分配通道
backup tablespace jangle;
输入该命令后,会依据RMAN配置的参数进行备份。11g的默认路径是
:\app\jangle\flash_recovery_area\orcl\BACKUPSET\2016_04_25
它会在闪回目录中建立实例名文件夹,再建立backupset文件夹,在该文件夹下面再建立日期文件夹。
backup [database|tablespace tbs_name] {format='d:\...'} --全数据库的备份
3、在未关闭数据库的时候做的备份,还需要再把当前的重做日志进行归档
sql'alter system archive log current'; --在rman中的命令。
4、备份控制文件
backup current controlfile;
也可以通过include current controlfile子句添加至备份数据库或者表空间的后面:
backup tablespace tbs_name include current controlfile;
list backup of controlfile; --查看控制文件备份信息
5、备份归档重做日志
backup archivelog all { delete all input}; --{}中增加后,在备份完成后会删除归档重做日志。
backup archivelog from time 'sysdate-8' until time 'sysdate-1'; --对一周前的归档日志进行备份。
list backup of archivelog all; --查看归档日志备份信息。
也可以通过plus archivelog子句添加至备份数据库或者表空间的后面,进行归档重做日志的备份:
backup database plus archivelog;
综合:
backup [database|tablespace tbs_name] include current controlfile plus archivelog;--备份数据库或者表空间同时备份其控制文件与归档日志文件。
6、多重备份(即备份多份放到不同的目录(磁盘))
backup copies 2 tablespace jangle
format 'D:\..bk_%d_%c.bak','D:\..bk_%d_%c.bak'; --其中tablespace jangle 可以替换为database。
7、增量备份
backup incremental level=0 [cumulative]
format 'D:\\...%Y_%M_%D_%c.bak'
tablespace jangle; --cumulative指定为累积增量备份。不指定为差异增量备份。0级为第一次备份,完全备份。
差异增量备份:备份基础为同级别或低一级的先前备份。
累积增量备份:备份基础为低一级的先前备份(故累积备份占用的存储会多些,但还原的速度比差异增量备份要快。)
注:在非归档模式下,只能关闭数据库后才能进行增量备份。
二、恢复
restore [database|tablespace tbs_name|datafile]; --对于非归档模式的数据库,仅能还原先前备份的数据库。
recover [database|tablespace tbs_name |datafile]; --对于归档模式的数据库,这还原后还需要进行恢复操作。此处将使用归档日志对其进行数据恢复,从而恢复至数据库损坏时的状态。
除此之外还有:
restore [ controlfile to | archivelog all ]; --还原控制文件,归档日志文件。(一般通过复合控制文件进行容灾,可不再进行备份。)
2.1、基于事件的不完全恢复
将数据库恢复到某个指定时间前的状态。
1、先进行脱机备份(关闭数据库),备份控制文件的所有符合、数据文件、归档的重做日志文件,反之不完全恢复失败。
2、启动到mount状态
3、