表空间数据文件丢失的恢复

发表于:2009-12-07 11:15

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:未知    来源:51Testing软件测试网采编

#
Oracle

  数据库处于归档模式。

  在数据库里新建了一个表空间,共有3个数据文件。各10M,表空间内有一张23M的表。

  SQL> select count(*) from ldy.t1;
  COUNT(*)
  ----------
  605136
  SQL> col segment_name for a20
  SQL> col tablespace_name for a20
  SQL> select segment_name,tablespace_name,bytes/1024/1024 mb from dba_segments where owner='LDY';
  SEGMENT_NAME         TABLESPACE_NAME              MB
  -------------------- -------------------- ----------
  T1                   LDY                          23

  关闭数据库,将表空间的其中一个数据文件删除,启动后报错:

  SQL> startup

  ORACLE 例程已经启动。

  Total System Global Area  612368384 bytes

  Fixed Size                  1250428 bytes

  Variable Size             230689668 bytes

  Database Buffers          373293056 bytes

  Redo Buffers                7135232 bytes

  数据库装载完毕。

  ORA-01157: 无法标识/锁定数据文件 6 - 请参阅 DBWR 跟踪文件

  ORA-01110: 数据文件 6: 'E:\ORACLE\ORADATA\LDY01.DBF'

  此时数据库为mount状态。

  SQL> select open_mode from v$database;

  OPEN_MODE

  ----------

  MOUNTED

  增加回该数据文件。

  SQL>alter database create datafile 'E:\ORACLE\ORADATA\LDY01.DBF';

  数据库已更改。

  介质恢复。

  SQL>recover datafile 6;

  完成介质恢复。

  数据库打开,正常查询。

  SQL> alter database open;

  数据库已更改。

  SQL> select count(*) from ldy.t1;

  COUNT(*)

  ----------

  605136

21/212>
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号