--------------创建测试表
[oracle@rhel6 ~]$ sqlplus / as sysdba
SQL>create user test identified by test default tablespace users;
SQL>grant dba to test;
SQL>create table test.c_test as select * from dba_users;
SQL> select count(*) from test.c_test;
COUNT(*)
----------
30
--------------删除数据文件
[oracle@rhel6 ~]$cd /u01/app/oradata/orcl
[oracle@rhel6 ~]$mv users01.dbf users01.dbf.bak
--------------恢复
[oracle@rhel6 orcl]$ ps -ef|grep dbw
oracle 3332 1 0 15:50 ? 00:00:00 ora_dbw0_orcl
oracle 3620 3203 0 16:51 pts/4 00:00:00 grep dbw
[oracle@rhel6 orcl]$ cd /proc/3332/fd/
[oracle@rhel6 fd]$ ls -lrt
total 0
lrwx------. 1 oracle oinstall 64 Oct 18 16:51 9 -> /u01/app/oracle/product/11.2.0/db_1/dbs/hc_orcl.dat
lr-x------. 1 oracle oinstall 64 Oct 18 16:51 8 -> /dev/zero
lr-x------. 1 oracle oinstall 64 Oct 18 16:51 7 -> /proc/3332/fd
lr-x------. 1 oracle oinstall 64 Oct 18 16:51 6 -> /u01/app/oracle/product/11.2.0/db_1/rdbms/mesg/oraus.msb
lr-x------. 1 oracle oinstall 64 Oct 18 16:51 5 -> /dev/null
lr-x------. 1 oracle oinstall 64 Oct 18 16:51 4 -> /dev/null
lr-x------. 1 oracle oinstall 64 Oct 18 16:51 3 -> /dev/null
lrwx------. 1 oracle oinstall 64 Oct 18 16:51 262 -> /u01/app/oradata/orcl/users01.dbf (deleted)
lrwx------. 1 oracle oinstall 64 Oct 18 16:51 261 -> /u01/app/oradata/orcl/temp01.dbf
lrwx------. 1 oracle oinstall 64 Oct 18 16:51 260 -> /u01/app/oradata/orcl/undotbs01.dbf
lrwx------. 1 oracle oinstall 64 Oct 18 16:51 259 -> /u01/app/oradata/orcl/sysaux01.dbf
lrwx------. 1 oracle oinstall 64 Oct 18 16:51 258 -> /u01/app/oradata/orcl/system01.dbf
lrwx------. 1 oracle oinstall 64 Oct 18 16:51 257 -> /u01/app/oracle/fast_recovery_area/orcl/control02.ctl
lrwx------. 1 oracle oinstall 64 Oct 18 16:51 256 -> /u01/app/oradata/orcl/control01.ctl
l-wx------. 1 oracle oinstall 64 Oct 18 16:51 2 -> /dev/null
lr-x------. 1 oracle oinstall 64 Oct 18 16:51 13 -> /u01/app/oracle/product/11.2.0/db_1/rdbms/mesg/oraus.msb
lrwx------. 1 oracle oinstall 64 Oct 18 16:51 10 -> /u01/app/oracle/product/11.2.0/db_1/dbs/lkORCL
l-wx------. 1 oracle oinstall 64 Oct 18 16:51 1 -> /dev/null
lr-x------. 1 oracle oinstall 64 Oct 18 16:51 0 -> /dev/null
[oracle@rhel6 fd]$ cp 262 /u01/app/oradata/orcl/users01.dbf
[oracle@rhel6 ~]$ sqlplus / as sysdba
SQL>alter database datafile 4 offline;
Database altered.
SQL>recover datafile 4 ;
Media recovery complete.
SQL>alter database datafile 4 online;
Database altered.
SQL> select count(*) from test.c_test;
COUNT(*)
----------
30

本文详细记录了在Oracle数据库中创建测试表的过程,包括用户创建、权限授予、数据表建立及数据查询。同时,深入探讨了数据文件的删除与恢复步骤,通过实际操作展示了如何在不丢失数据的情况下进行文件恢复,为数据库管理员提供了实用的操作指南。
1456

被折叠的 条评论
为什么被折叠?



