文档库 最新最全的文档下载
当前位置:文档库 › Oracle归档及恢复步骤

Oracle归档及恢复步骤

oracle数据备份培训
10/17 am

归档模式:
shutdown immediate;
startup mount;
alter database archivelog;
alter database open;

非归档模式:
shutdown immediate;
startup mount;
alter database noarchivelog;
alter database open;

查看归档模式:
archive log list;



高可用性解决方案:
oracle data guard:备用数据库
rac
oracle streams:类似 data guard
logminer

配置备份和恢复操作:
archivelog模式下运行数据库
配置快速恢复区
指定保留策略:恢复时间段、冗余
db_recovery_file_dest_size:磁盘空间
db_recovery_file_dest:文件路径

快速恢复空间管理:
保留策略设置适合的最小值
rman备份
rman的report obsolete检查已备份的数据,然后delete obsolete删除


Rman target /
校验和删除失效的备份:
crosscheck backup;
delete expired backup;
全库备份:
backup device type disk tag '%TAG' database include current controlfile;
备份用户表空间:
backup device type disk tag '%TAG' tablespace 'USERS' include current controlfile;
备份数据文件:
backup device type disk tag '%TAG' datafile '/u01/app/oracle/oradata/test/users01.dbf' include current controlfile;
备份归档日志:
backup device type disk tag '%TAG' archivelog all not backed up;
压缩备份:as compressed backupset
backup device type disk tag 'BACKUP20121018_002' as compressed backupset database include current controlfile;
backup device type disk tag 'BACKUP20121018_002' as compressed backupset archivelog all not backed up;

恢复数据库到当前的时间点:
run {
restore database;
recover database;
}
恢复数据文件:
run {
sql 'alter database datafile 4 offline';
restore datafile 4;
recover datafile 4;
sql 'alter database datafile 4 online';
}
恢复SPFILE:
STARTUP FORCE NOMOUNT;
RESTORE SPFILE FROM AUTOBACKUP;
STARTUP FORCE;

恢复控制文件:
RESTORE CONTROLFILE TO '/oradata/ctlfile.bak' FROM AUTOBACKUP;
RECOVER DATABASE;
ALTER DATABASE OPEN RESETLOGS;

执行灾难恢复的基本过程:
还原服务器参数文件的自动备份
启动目标数据库实例
从自动备份还原控制文件
装载数据库
还原数据文件
恢复数据文件
使用 RESETLOGS 选项打开数据库

关闭数据库:
Shutdown immediate(立即关闭)
Shutdown abort(强制关闭)
Shutdown transactional(事务关闭)
Shutdown normal (较慢)
startup/startup open recover(启动、装载、打开数据库)
Startup nomount (启动不装载)--》alter database mount(装载)
Startup mount (启动并装载)---》alter database open(打开)
---》Alter database open read only(以只读的方式打开)
---》Alter database open read only(以读写的方式打开)
Startup force(强制启动)《-------------》Shutdown abort(强制关闭)

闪回表:
Flashback table xxxx to

before drop rename to xxxx;
Purge tablespace ts_name [user user_name]
Purge dba_recyclebin
闪回数据:
alter table js.test enable row movement;
查询表的闪回信息:
SELECT VERSIONS_STARTSCN,TO_CHAR(VERSIONS_STARTTIME,'YYYY-MM-DD HH24:MI:SS') START_TIME,
VERSIONS_XID,VERSIONS_OPERATION,A
FROM JS.TEST VERSIONS BETWEEN SCN MINVALUE AND MAXVALUE
WHERE A>97 AND VERSIONS_STARTSCN IS NOT NULL ORDER BY VERSIONS_STARTSCN DESC;

SELECT CURRENT_SCN FROM v$DATABASE;
将SCN转换成时间戳:SCN_TO_TIMESTAMP(scn_number)
将时间戳转换成SCN:TIMESTAMP_TO_SCN(timestamp)

启用闪回数据库:
SHUTDOWN IMMEDIATE;
STARTUP MOUNT EXCLUSIVE;
ALTER SYSTEM SET DB_FLASHBACK_RETENTION_TARGET=2880 SCOPE=BOTH; 48小时
ALTER DATABASE FLASHBACK ON;
ALTER DATABASE OPEN;

恢复数据库至某个闪回点:
SHUTDOWN IMMEDIATE;
STARTUP MOUNT
flashback database to scn 560644;
alter database open resetlogs;


rman执行出现如下错误
RMAN>delete obsolete;
ORA-19554: error allocating device, device type: SBT_TAPE, device name:
RMAN>show all;
RMAN>show default device type;
CONFIGURE CHANNEL DEVICE TYPE 'SBT_TAPE';
是由于默认配置中有磁带设备,而我们实际没有,故将SBT_TAPE类型的设置清除
RMAN>configure channel device type 'SBT_TAPE' clear;


删除已过期及已失效的备份
crosscheck backup;
delete noprompt obsolete;
delete noprompt expired backup;
delete noprompt expired copy;


format格式%:
%c备份片拷贝数
%d数据库名称
%F基于dbid的唯一名称,格式:c-DBID-YYYYMMDD-QQ,QQ为1-256的序列号(此参数设置与预期有差异,可能导致备份失败)
%u一个由八个字符的名称表示的备份集与创建时间
%p该备份集的备份片号,从1开始计数
%U表示%u_%p_%c
%s备份集的编号
%t备份的时间戳
%T年月日格式(YYYYMMDD)


CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 7 DAYS;
CONFIGURE DEVICE TYPE DISK BACKUP TYPE TO COMPRESSED BACKUPSET PARALLELISM 3;
CONFIGURE CHANNEL DEVICE TYPE DISK FORMAT '/opt/oracle/backup/dbf_%d_%U' MAXPIECESIZE 20 G;
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '/opt/oracle/backup/ctl_%d_%F';

相关文档
相关文档 最新文档