Chinaunix首页 | 论坛 | 博客
  • 博客访问: 527080
  • 博文数量: 128
  • 博客积分: 4000
  • 博客等级: 上校
  • 技术积分: 1345
  • 用 户 组: 普通用户
  • 注册时间: 2008-01-22 21:43
文章分类

全部博文(128)

文章存档

2009年(30)

2008年(98)

我的朋友

分类: Oracle

2008-10-14 23:36:33

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.以前的备份无法再使用,需要再次备份
阅读(1128) | 评论(1) | 转发(0) |
给主人留下些什么吧!~~

chinaunix网友2009-11-06 11:58:51

说得挺好的.