Oracle

误删Oracle数据库实例的控制文件

日期:2017/7/10 10:26:42来源: IT猫扑网

  前两天我在备份数据时,发现C:\oracle\product\10.2.0\oradata\GXSN\TEMP01.DBF文件大小竟然为23G多,完全消耗掉C盘空间,匆忙间我以为oradata/GXSN整个文件夹下文件为临时文件,将其完全删除。

  因为Oracle的数据文件都存放在E盘下,不知道oradata/GXSN存放的是控制文件,造成数据库无法使用。我通过查询相关资料想重建控制文件,但发现重建控制文件是在ORACLE控制文件已经备份的前提下的,我之前没有备份过Oracle的控制文件,所以无法恢复。

  在整个解决问题的过程中,我曾尝试了多种思路。虽然失败,但锻炼了解决问题的能力,也总结了一些经验。

  0.求助Oracle中国技术支持,竟然周末无人服务,需要等待工作日。(失败)

  1.使用EasyRecovery恢复删除的控制文件,因为服务器的E盘较大,达到3T,EasyRecovery无法使用。又使用了其他数据恢复软件,都无法恢复删除的数据。(失败)

  2.查询相关资料,尝试重建控制文件。(失败)

  CREATE CONTROLFILE reuse set  DATABASE orcl RESETLOGS noARCHIVELOG

  MAXLOGFILES 32

  MAXLOGMEMBERS 3

  MAXDATAFILES 32

  MAXINSTANCES 16

  MAXLOGHISTORY 1600

  LOGFILE

  group 1 ('E:\oracle\product\10.2.0\oradata\orcl\redo01.log') size 100k ,

  group 2 ('E:\oracle\product\10.2.0\oradata\orcl\redo02.log') size 100k,

  group 3 ('E:\oracle\product\10.2.0\oradata\orcl\redo03.log') size 100k,

  datafile

  'E:\oracle\product\10.2.0\oradata\orcl\users01.dbf',

  'E:\oracle\product\10.2.0\oradata\orcl\undotbs01.dbf',

  'E:\oracle\product\10.2.0\oradata\orcl\system01.dbf',

  'E:\oracle\product\10.2.0\oradata\orcl\sysaux01.dbf',

  'E:\oracle\product\10.2.0\oradata\orcl\example01.dbf';

  3.在别的机器上创建相同的GXSN数据库,然后将其下面的控制文件导入服务器的数据库下,但发现失败。

  4.在服务器上新建ORACLE服务实例,生成相应的控制文件,将其下面的控制文件导入的数据库GXSN下,但发现失败。

  5.将新建的数据库实例删除,原来的数据库在CMD控制台上使用SQLPLUS无法连接

  sqlplus /nolog

  conn /as sysdba

  出现ORA-12360:TNS:协议适配器错误

  无语了,竟然无法连接到原数据库实例上了。

  两三T的数据只能重新录入,这次自己的失误,真的是损失惨重!自己以后在心态浮躁时一定要冷静点,不可急躁。自己在ORACLE的学习上需更深一步,免得再犯如此低级的严重错误!

相关文章

相关下载

网友评论

我要评论...
    没有更早的评论了
    取消