Heim > Datenbank > MySQL-Tutorial > 12、备份与恢复ing

12、备份与恢复ing

WBOY
Freigeben: 2016-06-07 14:51:14
Original
1157 Leute haben es durchsucht

连接目标数据库: 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、

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage