Oracle的冷备份
1、 冷备份发生在数据库已经正常关闭的情况下,当正常关闭时会提供给我们一个完
整的数据库。冷备份是将关键性文件拷贝到另外位置的一种做法。对于备份Oracle信息而言,冷备份是最快和最安全的方法。值得注意的是冷备份必须是数据库关闭的情况下完成,当数据库开着的时候,执行数据库文件系统备份无效。
2、冷备份所需备份的文件包括以下几种:
l 所有数据文件
l 所有控制文件
l 所有联机REDO LOG 文件
l INIT.ORA文件(可选)
3、冷备份的步骤
l 正常关闭要备份的实例(instance)
l 备份整个数据库到一个目录
l 启动数据库
4、用冷备份进行数据库恢复
如果数据库是运行在非归档日志模式下,将备份文件拷贝回原来的目录即可。非归档日志模式下数据库只能恢复到备份时刻的状态。
如果数据库是运行在归档日志模式下,将数据文件拷回原来的目录(不包括联机redolog文件),然后依次选择相应的重做日志文件进行恢复,即可恢复冷备份后的所有操作,即是说可以恢复到系统崩溃前的状态。
5、冷备份示例
l 示例一、windows环境下的冷备份与恢复
在本例中,数据库实例名wh,所有数据文件、所有控制文件和所有联机REDO LOG 文件都在文件夹D:oracleora92wh中,备份恢复的操作如下:
1、 进入 sql*plus,以sysdba的身份登录数据库
SQL>sys/oracle@wh as sysdba
2、 关闭数据库SQL>shutdown immediate
3、 拷贝D:oracleora92wh到目标备份目录E:bacakuporawh
数据库冷备份完成。下面对数据库中的内容进行更改:
4、启动数据库
SQL>startup
5、删除数据
SQL>delete * from wh.test
此时进行数据库恢复。
6、SQL>shutdown immediate;
7、拷贝目标备份目录E:bacakuporawh到D:oracleora92wh
数据库恢复完毕。通过查询可以发现数据库恢复到进行备份时刻的状态,备份后所进行的所有操作无效。
l 示例二、linux环境下的冷备份与恢复
在本例中,数据库实例名urpdb,所有数据文件存放在oradataurpdb目录下,所有控制文件和所有联机REDO LOG 文件都在文件夹optora9oradataurpdb中,备份恢复的操作如下:
1、sys/oracle@urpdb as sysdba 进入sql*plus;
2、SQL>shutdown immediate (保持所有数据文件在时间点上的一致性)
3、拷贝oradataurpdb和optora9oradataurpdb下的所有文件到新的备份目录。
假设进行如下操作:
4、SQL>startup
5、SQL>create table test(c1 number(5),c2 varcharc(10));
6、SQL>insert into text values(1,’a’);
7、SQL>commit;
此后假设有一个数据文件坏了,然后将备份的所有文件包括联机重做日志文件拷贝回来。
8、SQL>shutdown immediate;
9、拷贝文件包括联机重做日志文件。
SQL>startup;
数据恢复完毕!但备份后所执行的操作没有恢复。
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/7180624/viewspace-900524/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/7180624/viewspace-900524/