oracle误删datafile

2013-06-08

维护过程中应尽量避免误操作,多细心都不为过,细心细心再细心。

危险的误操作:
1、操作系统
rm操作
字符错误操作,比如005操作成oo5
文件不全
重启网卡导致无法连接
ifdown操作
修改密码操作
删除分区操作
重启ssh导致无法连接

2、数据库
drop操作
truncate操作
mv和cp防止覆盖文件
update操作忘了设置where条件

如果你误删除了dbf文件怎么办呢?如果无法恢复文件,只好将tablespace删除。

1、oracle服务还在正常运行。
#!/bin/bash

. ~/.bash_profile

ts=TABLESPACE_NAME
dst1=/data3/oracle/v_DATA_TS_201301_1.dbf
dst2=/data3/oracle/v_DATA_TS_201301_2.dbf

sqlplus user/password << EOF alter tablespace $ts read only; alter tablespace $ts offline; alter database datafile '$dst1' offline drop; alter database datafile '$dst2' offline drop; DROP TABLESPACE $ts INCLUDING CONTENTS AND DATAFILES; quit; EOF 2、如果oracle服务处于停止的情况,已经无法启动 sqlplus /nolog SQL> conn /as sysdba
SQL> startup mount
SQL> alter database datafile '/data3/oracle/v_DATA_TS_201301_1.dbf' offline drop;
SQL> alter database datafile '/data3/oracle/v_DATA_TS_201301_2.dbf' offline drop;
SQL> alter database open;
SQL> DROP TABLESPACE TABLESPACE_NAME INCLUDING CONTENTS AND DATAFILES;
SQL> quit;

分类:数据库 | 标签: |

相关日志

评论被关闭!