1.在SCOTT用户创建表T1
SQL> conn scott/tiger@oss
已连接。
SQL> create table t1(id int);
表已创建。
SQL> insert into t1 values(1);
已创建 1 行。
SQL> insert into t1 values(2);
已创建 1 行。
SQL> commit;
提交完成。
2.备份数据库
SQL> alter tablespace system begin backup;
表空间已更改。
SQL> host copy D:\ORACLE\ORADATA\OSS\SYSTEM01.DBF D:\ORACLE\ORADATA\bak\SYSTEM01.DBF;
已复制 1 个文件。
SQL> alter tablespace system end backup;
表空间已更改。
SQL>
SQL> alter tablespace indx begin backup;
表空间已更改。
SQL> host copy D:\ORACLE\ORADATA\OSS\INDX01.DBF D:\ORACLE\ORADATA\bak\INDX01.DBF;
已复制 1 个文件。
SQL> alter tablespace indx end backup;
表空间已更改。
SQL>
SQL> alter tablespace tools begin backup;
表空间已更改。
SQL> host copy D:\ORACLE\ORADATA\OSS\TOOLS01.DBF D:\ORACLE\ORADATA\bak\TOOLS01.DBF;
已复制 1 个文件。
SQL> alter tablespace toolS end backup;
表空间已更改。
SQL>
SQL> alter tablespace users begin backup;
表空间已更改。
SQL> host copy D:\ORACLE\ORADATA\OSS\USERS01.DBF D:\ORACLE\ORADATA\bak\USERS01.DBF;
已复制 1 个文件。
SQL> alter tablespace users end backup;
表空间已更改。
SQL>
SQL> alter tablespace undotbs1 begin backup;
表空间已更改。
SQL> host copy D:\ORACLE\ORADATA\OSS\UNDOTBS01.DBF D:\ORACLE\ORADATA\bak\UNDOTBS01.DBF;
已复制 1 个文件。
SQL> alter tablespace undotbs1 end backup;
表空间已更改。
SQL>
SQL> alter tablespace tbs_mid begin backup;
表空间已更改。
SQL> host copy D:\ORACLE\ORADATA\bss\bss.DBF D:\ORACLE\ORADATA\bak\bss.DBF;
已复制 1 个文件。
SQL> alter tablespace tbs_mid end backup;
表空间已更改。
SQL>
SQL> ALTER DATABASE BACKUP CONTROLFILE TO 'D:\ORACLE\ORADATA\bak\oss.ctl';
数据库已更改。
SQL>
SQL> ALTER SYSTEM ARCHIVE LOG CURRENT;
系统已更改。
3.确定当前时间
SQL> host date
当前日期: 2008-10-14
输入新日期: (年月日)
SQL> host time
当前时间: 23:18:17.53
输入新时间:
4.在SCOTT用户中DROP掉表T1
SQL> drop table t1;
表已丢弃。
5.开始恢复SCOTT的t1表
SQL> shutdown immediate;
数据库已经关闭。
已经卸载数据库。
ORACLE 例程已经关闭。
SQL> startup force mount;
ORACLE 例程已经启动。
Total System Global Area 143728252 bytes
Fixed Size 454268 bytes
Variable Size 88080384 bytes
Database Buffers 54525952 bytes
Redo Buffers 667648 bytes
数据库装载完毕。
6.使用备份文件恢复
SQL> host copy D:\ORACLE\ORADATA\bak\SYSTEM01.DBF D:\ORACLE\ORADATA\OSS\SYSTEM01.DBF;
已复制 1 个文件。
SQL> host copy D:\ORACLE\ORADATA\bak\INDX01.DBF D:\ORACLE\ORADATA\OSS\INDX01.DBF;
已复制 1 个文件。
SQL> host copy D:\ORACLE\ORADATA\bak\TOOLS01.DBF D:\ORACLE\ORADATA\OSS\TOOLS01.DBF;
已复制 1 个文件。
SQL> host copy D:\ORACLE\ORADATA\bak\USERS01.DBF D:\ORACLE\ORADATA\OSS\USERS01.DBF;
已复制 1 个文件。
SQL> host copy D:\ORACLE\ORADATA\bak\UNDOTBS01.DBF D:\ORACLE\ORADATA\OSS\UNDOTBS01.DBF;
已复制 1 个文件。
SQL> host copy D:\ORACLE\ORADATA\bak\bss.DBF D:\ORACLE\ORADATA\bss\bss.DBF;
已复制 1 个文件。
SQL>
7.恢复到时间点
SQL> recover database until time '2008-10-14 23:18:17'
完成介质恢复。
8.以resetlogs打开数据库
SQL> alter database open resetlogs;
数据库已更改。
9.查看scott
SQL> conn scott/tiger@oss
已连接。
SQL> select * from t1;
ID
----------
1
2
SQL>
恢复成功
10.以前的备份无法再使用,需要再次备份
阅读(1160) | 评论(1) | 转发(0) |