> 데이터 베이스 > MySQL 튜토리얼 > 12、备份与恢复ing

12、备份与恢复ing

WBOY
풀어 주다: 2016-06-07 14:51:14
원래의
1158명이 탐색했습니다.

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

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
최신 이슈
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿