数据文件丢失之后的恢复
类别: 数据库教程
SQL> startup
ORACLE instance started.
Total System Global Area 73109664 bytes
Fixed Size 73888 bytes
Variable Size 56086528 bytes
Database Buffers 16777216 bytes
Redo Buffers 172032 bytes
Database mounted.
ORA-03113: end-of-file on communication channel
我的环境是linux9 oracle 8.1.7.4
出现问题的当时是,一台机器连到上面做insert into 操作,数据大概有63万条。
正在执行的过程中因为到了下班的时间,服务器设置的定时自动关机的功能,服务器
在五点半的时候关机,导致insert into 操作中断,等服务器起来之后,提示一个表数据文件有问题,我就执行了
shutdown immediate
startup mount
recover datafile \'/datafile.dbf\'
提示恢复成功
startup
就出现上面的错误提示
终于搞定了,采取的步骤是把,受到影响的表空间何数据文件drop 掉
SQL> startup
ORACLE instance started.
Total System Global Area 73109664 bytes
Fixed Size 73888 bytes
Variable Size 56086528 bytes
Database Buffers 16777216 bytes
Redo Buffers 172032 bytes
Database mounted.
ORA-03113: end-of-file on communication channel
SQL> conn system/manager as sysdba
Connected.
SQL> select name from datafiles
2 ;
select name from datafiles
*
ERROR at line 1:
ORA-01219: database not open: queries allowed on fixed tables/views only
SQL> select name from v$datafile
2 ;
NAME
--------------------------------------------------------------------------------
/u01/oradata/EMCDB/system01.dbf
/u01/oradata/EMCDB/tools01.dbf
/u01/oradata/EMCDB/rbs01.dbf
/u01/oradata/EMCDB/temp01.dbf
/u01/oradata/EMCDB/users01.dbf
/u01/oradata/EMCDB/indx01.dbf
/u01/oradata/EMCDB/drsys01.dbf
/u01/oradata/EMCDB/EMCBASE.dbf
/home/oracle/test.dbf
/home/adonis/dwbx_wmstat.dbf
//home/adonis/iwbx_wmindx.dbf
11 rows selected.
SQL> alter database datafile \'//home/adonis/iwbx_wmindx.dbf\' offline
2 ;
alter database datafile \'//home/adonis/iwbx_wmindx.dbf\' offline
*
ERROR at line 1:
ORA-01145: offline immediate disallowed unless media recovery enabled
SQL> alter database datafile \'//home/adonis/iwbx_wmindx.dbf\' offline drop;
Database altered.
SQL> alter database datafile \'/home/adonis/dwbx_wmstat.dbf\' offline drop;
Database altered.
SQL> alter database open;
alter database open
*
ERROR at line 1:
ORA-03113: end-of-file on communication channel
SQL> select name from v$tablespace;
select name from v$tablespace
*
ERROR at line 1:
ORA-03114: not connected to ORACLE
SQL> connect system/manager as sysdba;
Connected.
SQL> select name from v$tablespace;
NAME
------------------------------
SYSTEM
TEMP
RBS
INDX
USERS
DRSYS
TOOLS
EMCBASE
TEST_USER
DWBX_WMSTAT
IWBX_WMINDX
11 rows selected.
SQL> alter database tablespace \'DWBX_WMSTAT\' offline;
alter database tablespace \'DWBX_WMSTAT\' offline
*
ERROR at line 1:
ORA-02231: missing or invalid option to ALTER DATABASE
SQL> drop tablespace DWBX_WMSTAT;
drop tablespace DWBX_WMSTAT
*
ERROR at line 1:
ORA-01549: tablespace not empty, use INCLUDING CONTENTS option
SQL> drop tablespace DWBX_WMSTAT INCLUDING CONTENTS;
Tablespace dropped.
SQL> drop tablespace IWBX_WMINDX INCLUDING CONTENTS;
Tablespace dropped.
SQL> alter database open
2 ;
alter database open
*
ERROR at line 1:
ORA-01531: a database already open by the instance
database open success!!!!!
ORACLE instance started.
Total System Global Area 73109664 bytes
Fixed Size 73888 bytes
Variable Size 56086528 bytes
Database Buffers 16777216 bytes
Redo Buffers 172032 bytes
Database mounted.
ORA-03113: end-of-file on communication channel
我的环境是linux9 oracle 8.1.7.4
出现问题的当时是,一台机器连到上面做insert into 操作,数据大概有63万条。
正在执行的过程中因为到了下班的时间,服务器设置的定时自动关机的功能,服务器
在五点半的时候关机,导致insert into 操作中断,等服务器起来之后,提示一个表数据文件有问题,我就执行了
shutdown immediate
startup mount
recover datafile \'/datafile.dbf\'
提示恢复成功
startup
就出现上面的错误提示
终于搞定了,采取的步骤是把,受到影响的表空间何数据文件drop 掉
SQL> startup
ORACLE instance started.
Total System Global Area 73109664 bytes
Fixed Size 73888 bytes
Variable Size 56086528 bytes
Database Buffers 16777216 bytes
Redo Buffers 172032 bytes
Database mounted.
ORA-03113: end-of-file on communication channel
SQL> conn system/manager as sysdba
Connected.
SQL> select name from datafiles
2 ;
select name from datafiles
*
ERROR at line 1:
ORA-01219: database not open: queries allowed on fixed tables/views only
SQL> select name from v$datafile
2 ;
NAME
--------------------------------------------------------------------------------
/u01/oradata/EMCDB/system01.dbf
/u01/oradata/EMCDB/tools01.dbf
/u01/oradata/EMCDB/rbs01.dbf
/u01/oradata/EMCDB/temp01.dbf
/u01/oradata/EMCDB/users01.dbf
/u01/oradata/EMCDB/indx01.dbf
/u01/oradata/EMCDB/drsys01.dbf
/u01/oradata/EMCDB/EMCBASE.dbf
/home/oracle/test.dbf
/home/adonis/dwbx_wmstat.dbf
//home/adonis/iwbx_wmindx.dbf
11 rows selected.
SQL> alter database datafile \'//home/adonis/iwbx_wmindx.dbf\' offline
2 ;
alter database datafile \'//home/adonis/iwbx_wmindx.dbf\' offline
*
ERROR at line 1:
ORA-01145: offline immediate disallowed unless media recovery enabled
SQL> alter database datafile \'//home/adonis/iwbx_wmindx.dbf\' offline drop;
Database altered.
SQL> alter database datafile \'/home/adonis/dwbx_wmstat.dbf\' offline drop;
Database altered.
SQL> alter database open;
alter database open
*
ERROR at line 1:
ORA-03113: end-of-file on communication channel
SQL> select name from v$tablespace;
select name from v$tablespace
*
ERROR at line 1:
ORA-03114: not connected to ORACLE
SQL> connect system/manager as sysdba;
Connected.
SQL> select name from v$tablespace;
NAME
------------------------------
SYSTEM
TEMP
RBS
INDX
USERS
DRSYS
TOOLS
EMCBASE
TEST_USER
DWBX_WMSTAT
IWBX_WMINDX
11 rows selected.
SQL> alter database tablespace \'DWBX_WMSTAT\' offline;
alter database tablespace \'DWBX_WMSTAT\' offline
*
ERROR at line 1:
ORA-02231: missing or invalid option to ALTER DATABASE
SQL> drop tablespace DWBX_WMSTAT;
drop tablespace DWBX_WMSTAT
*
ERROR at line 1:
ORA-01549: tablespace not empty, use INCLUDING CONTENTS option
SQL> drop tablespace DWBX_WMSTAT INCLUDING CONTENTS;
Tablespace dropped.
SQL> drop tablespace IWBX_WMINDX INCLUDING CONTENTS;
Tablespace dropped.
SQL> alter database open
2 ;
alter database open
*
ERROR at line 1:
ORA-01531: a database already open by the instance
database open success!!!!!
- 上一篇: 存储过程-实践
- 下一篇: 如何将数据表导出备份到EXCEL表格
-= 资 源 教 程 =-
文 章 搜 索