备份:
    DBWR:
    LGWR:(oradata中)三个日志redo01.log、redo02.log、redo02.log。
    ARCH:归档日志:备份redo日志。    要完整恢复archivelog归档。
    CKPT:通知DBWR、LGWR、ARCH什么时候写;通知控制文件写。

至少备份(2个):数据文件、redo log。
    物理备份:v$datafile、v$logfile、v$controlfile、v$recovery_log、密码文件、参数文件。
        (前三个最重要!)
    逻辑备份:二进制文件、文本文件——用DML、DDL、DCL。
          导入/导出:IMP、EXP

冗余机制:备份要放到其它物理位置。

物理备份、逻辑备份 都是“垃圾数据”。

当恢复时,
非归档:如不要最新的数据时,OK!   noarchivelog
归档:日志(LGWR、ARCH),可部分或完整恢复。

设置为归档:
① >startup mount;
② >alter database archivelog;        –>10G
   >alter system archive log start;    –>9i
③ >alter database open;
④ >archive log list;
归档文件存放在:/u01/app/flash_recovery_area/    (10g)
单机>alter system switch logfile;    切换日志,会在归档目录下有日志产生。
集群>alter system archive log current;

>archive log all;    看哪些日志要归档

冷备份:
停止数据库后做的备份;
所有的数据库都可以冷备份;
冷备份不能备局部,必须备份整体;
没有增量备份策略;
需要的空间较大;
概念简单,执行简单。

冷备份的执行步骤:
⑴ 一致性停止数据库(shutdown immediate;)
⑵ 备份:数据文件、控制文件、日志文件、
     密码文件、参数文件、临时文件(可选)
⑶ 启动数据库。

书写冷备份脚本:
select ‘copy ‘||name||’ d:\bk’ from v$datafile
union all
select ‘copy ‘||name||’ d:\bk’ from v$controlfile
union all
select ‘copy ‘||name||’ d:\bk’ from v$tempfile
union all
select ‘copy ‘||member||’ d:\dk’ from v$logfile;
这是是脚本的局部,前面得加停止数据库,后面加启动数据库,另外加上参数文件和密码文件的备份命令。
运行脚本
查看日志
1。数据库停止了
2。复制成功
3。数据库启动了

优点:
    冷备份是最可靠的备份;
    在不完全恢复前和后都最好做冷备份。
缺点:
    必须停止数据库;
    空间占用大,冷备份是一个整体,不能备份局部,所以使用的时候有一定的局限性,当然如果是归档数据库可以备份局部,但一般我们不这么做,因为归档数据库可以热备份,不必停止数据库。

冷备份的恢复:
停止数据库,将备份复制回原来的目录就可以。
将数据库带回到备份的时间点。如果想恢复全部的交易,要应用归档的日志。

热备份:
数据库open下的备份;
数据库必须处于归档状态;
可以备份局部;
没有增量备份策略。

备份内容:
    数据文件、控制文件、归档日志文件、密码文件、参数文件;
    不能备份在线的日志文件redo log。

数据文件的备份:
alter tablespace users begin backup;
host copy ####  *****
alter tablespace users end backup;
除了临时表空间外,所有表空间都要做一遍。
> select *  from v$backup;

alter tablespace users begin backup;
1。将该表空间的文件单独存盘。
2。将该表空间的文件头冷冻。
3。日志的产生加入了变化块的原来拷贝。
4。数据文件体不影响,因为文件头中没有我们的数据,所以交易可以继续。
5。恢复的时候需要归档文件的支持。

alter tablespace users end backup;
将文件头解冻
将控制文件中最新的存盘时间SCN写入文件头
一句话,热备份的文件是一个〖无效的垃圾文件〗,需要〖日志的配合〗才能恢复,所以归档数据库是热备份的前提条件。热备份的文件中〖只有一个数据块〗是保真的,就是被冷冻的数据文件头的〖第一个块〗,文件头有8个块,数据库只冷冻一个,因为数据库只是需要一个SCN坐标而已。其余7个数据块含有范围的信息,是会改变的,不能冷冻。我们备份的垃圾文件的数据块有两类:一是SCN小于头的块,另一类是SCN大于头的块,凡是大于文件头的块都有一个该块的原形存在于日志文件中。