备份还原基本概念
备份:冷备和热备。
冷备:数据库关闭状态下的备份,也叫脱机备份。
热备:数据库正常运行状态下的备份,联机备份。联机物理备份,数据库需要开启
归档。
DMRMAN 和 DM 控制台工具都是脱机备份和还原的工具。
disql 和 DM 管理工具执行备份,此时数据库是启动状态。
--查看备份路径
select * from v$dm_ini t where t.PARA_NAME like 'BAK_PATH';
--查看BAK_USER_AP 参数
select * from v$dm_ini t where t.PARA_NAME like '%BAK_USE_AP%';
查看AP服务是否启动
数据库永久魔数不会变化,数据库魔数每还原恢复一次会更新一次。
SELECT PERMANENT_MAGIC; --数据库永久魔数
SELECT DB_MAGIC FROM V$RLOG;
脱机备份与还原数据库
DMRMAN 是脱机备份的命令行工具
DM 控制台工具是脱机备份的图形化界面工具。
使用这两个工具备份和还原数据库,需要数据库是关闭状态。
RMAN> backup database '/dm8/data/DAMENG/dm.ini';
--指定备份名称
RMAN> backup database '/dm8/data/DM01/dm.ini' to INCRBAK_DMRMAN01 backupset '/dm8/backup/dmrman/INCRBAK_DMRMAN01';
脱机还原和恢复数据库:
完全恢复(数据库介质故障,比如数据丢失,可以利用归档恢复故障的前一刻):
--还原
restore database '/dm8/data/DAMENG/dm.ini' from backupset '/dm8/backup/dmrman/INCRBAK_DMRMAN01'
--恢复
recover database '/dm8/data/DAMENG/dm.ini' with archivedir '/dm8/arch'
--更改数据库魔数
recover database '/dm8/data/DAMENG/dm.ini' update db_magic;
表空间还原和恢复,表空间的还原和恢复不需要更新数据库魔数:
LSN 指日志序列号(Log Sequence Number)
联机备份与还原数据库
联机物理备份,数据库需要开启归档模式。
不指定备份类型时默认是全量备份。
backup database full; --全量备份
backup database increment; --最简单的不设置其他参数的增量备份语句
backup database increment BACKUPSET '/dm8/backup/incr/incr01';--增量备份,备份集路径
backup database increment with BACKUPDIR '/dm8/backup/incr/' BACKUPSET
'/dm8/backup/incr/incr02'; --增量备份,指定基备份的搜索目录
backup database increment with BACKUPDIR '/dm8/backup/incr/' to incr03 BACKUPSET
'/dm8/backup/incr/incr03'; --指定备份名incr03
backup database increment CUMULATIVE with BACKUPDIR '/dm8/backup/incr/' to incr04
BACKUPSET '/dm8/backup/incr/incr04'; --指定备份名为incr04的累积增量备份类型
--查看备份集信息:
select * from v$backupset;
--添加备份集搜索目录:
select * from v$ifun t where t.name like 'SF_%BAK%';
--仅对当前会话生效。
select SF_BAKSET_BACKUP_DIR_ADD('DISK','/dm8/backup/incr');
--检验备份集
select SF_BAKSET_CHECK('DISK','/dm8/backup/incr/incr04');
--删除备份集
select SF_BAKSET_REMOVE('DISK','/dm8/backup/incr/incr04');