【ORACLE备份与恢复】用户管理的:基于scn的数据库不完全恢复
来源:互联网 发布:youtube软件怎么用 编辑:程序博客网 时间:2024/06/06 06:03
1、首先,关闭数据库,然后备份所有的数据文件,注意,包括:system表空间的文件,用户表空间的文件、undo表空间的文件。
2、登录数据库,然后,创建一个表data01,并插入数据,提交,显示scn号。
C:\Users\Administrator>sqlplus / as sysdbaSQL*Plus: Release 11.2.0.1.0 Production on 星期二 3月 11 14:48:53 2014Copyright (c) 1982, 2010, Oracle. All rights reserved.已连接到空闲例程。SQL> startupORACLE 例程已经启动。Total System Global Area 1068937216 bytesFixed Size 2182592 bytesVariable Size 675283520 bytesDatabase Buffers 385875968 bytesRedo Buffers 5595136 bytes数据库装载完毕。数据库已经打开。SQL> select current_scn from v$database;CURRENT_SCN----------- 232765SQL> create table data01(v int) tablespace data01;表已创建。SQL> insert into data01 values(1);已创建 1 行。SQL> commit;提交完成。SQL> select current_scn from v$database;CURRENT_SCN----------- 232805
3、模拟误操作:truncate 了scott.emp,并显示scn号
SQL> truncate table scott.emp;表被截断。SQL> select current_scn from v$database;CURRENT_SCN----------- 232858
4、关闭数据库,把数据库启动到mount状态,然后,把刚才备份的文件,也就是trauncate之前备份的数据文件,复制到目录下并覆盖原来的文件:
SQL> shutdown immediate;数据库已经关闭。已经卸载数据库。ORACLE 例程已经关闭。SQL> startup mount;ORACLE 例程已经启动。Total System Global Area 1068937216 bytesFixed Size 2182592 bytesVariable Size 675283520 bytesDatabase Buffers 385875968 bytesRedo Buffers 5595136 bytes数据库装载完毕。
5、进行基于scn的不完全恢复,恢复到scn为232805的时间点的状态,注意,必须用resetlogs来打开数据库。
SQL> recover automatic database until change 232805;完成介质恢复。SQL> alter database open resetlogs;数据库已更改。
6、之所以要这样,是因为把数据库恢复到过去的状态,而联机日志是最新的状态,所以需要重置日志,日志序列号会重新从1开始:
SQL> archive log list数据库日志模式 存档模式自动存档 启用存档终点 d:\demo\archive3最早的联机日志序列 1下一个存档日志序列 1当前日志序列 1
7、测试发现scott.emp数据已经恢复,而创建的data01也恢复了:
SQL> select count(*) from scott.emp; COUNT(*)---------- 12SQL> select * from data01; V---------- 1
8、以resetlogs打开数据库后,过去的备份就不能直接使用,所以为了避免介质失败而无法恢复,必须要重新备份所有数据文件、控制文件:
SQL> select name from v$datafile;NAME--------------------------------------------------------------------------------D:\DEMO\SYSTEM01.DBFD:\DEMO\SYSAUX01.DBFD:\DEMO\UNDOTBS1.DBFD:\DEMO\DATA01.DBF
SQL> alter database begin backup;数据库已更改。SQL> host copy d:\demo\system01.dbf d:\demo\backup1\system01.dbf;已复制 1 个文件。SQL> host copy d:\demo\sysaux01.dbf d:\demo\backup1\sysaux01.dbf;已复制 1 个文件。SQL> host copy d:\demo\undotbs01.dbf d:\demo\backup1\undotbs01.dbf;系统找不到指定的文件。SQL> host copy d:\demo\undotbs1.dbf d:\demo\backup1\undotbs1.dbf;已复制 1 个文件。SQL> host copy d:\demo\data01.dbf d:\demo\backup1\data01.dbf;已复制 1 个文件。SQL> alter database end backup;数据库已更改。SQL> alter database backup controlfile to 'd:\demo\backup1\orcl.ctl' reuse;数据库已更改。SQL> alter system archive log current;系统已更改。
0 0
- 【ORACLE备份与恢复】用户管理的:基于scn的数据库不完全恢复
- 【ORACLE备份与恢复】用户管理的:基于时间的数据库不完全恢复
- 【ORACLE备份与恢复】用户管理的:基于取消的数据库不完全恢复
- RMAN备份与恢复—基于SCN的不完全恢复
- ARCHIVELOG模式下用户管理的不完全恢复—基于SCN的不完全恢复
- Oracle 基于用户管理的不完全恢复
- Oracle基于用户管理的不完全恢复
- Oracle基于用户管理的不完全恢复
- 基于SCN的不完全恢复
- RMAN备份与恢复(7)——基于SCN的不完全恢复!
- ARCHIVELOG模式下用户管理的不完全恢复(2)——基于SCN的不完全恢复!
- ARCHIVELOG模式下用户管理的不完全恢复—基于备份控制文件的不完全恢复
- 基于用户管理的备份与恢复
- rman基于SCN的不完全恢复
- 我的备份与恢复实验(归档模式下用户管理的不完全恢复,基于时间点的)
- Oracle中的用户管理的不完全恢复
- SCN与Oracle数据库恢复的关系
- ARCHIVELOG模式下用户管理的不完全恢复(4)——基于备份控制文件的不完全恢复!
- 三.3.2 时间类
- 计数排序--Java
- ContentProvider中使用DISTINCT
- 为应用程序主界面添加停靠面板
- 运营商数据量最大但不是大数据
- 【ORACLE备份与恢复】用户管理的:基于scn的数据库不完全恢复
- linux驱动的类class及其节点
- 苹果App Store审核指南中文翻译(更新)
- 关于Spring中AOP的一个小例子程序
- 关于AlertDialog中EditText不能弹出输入法解决方法
- 关于UDP 中的组播问题
- 花生壳和IIS搭建网站的方法 一
- ExtJs下拉框组件Ajax方式显示
- 如果我们使用匈牙利表示法的变量名