欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

非法删除数据文件导致数据库不能打开ORA-01122 ORA-01251

程序员文章站 2024-02-06 14:04:40
...

今天一同事找我,说他本地的数据库被他误删除了文件,导致不能打开,然给看看。SQLgt; conn jjw/jjwERROR:ORA-01033: ORACLE in

今天一同事找我,说他本地的数据库被他误删除了文件,导致不能打开,然给看看。
SQL> conn jjw/jjw
ERROR:
ORA-01033: Oracle initialization or shutdown in progress

Warning: You are no longer connected to ORACLE.
SQL>
数据库已经启动,但连接报错。如是,我重启一下,看报什么错误。
SQL> conn /as sysdba
Connected.
SQL> shutdown immediate
ORA-01109: database not open

Database dismounted.
ORACLE instance shut down.
SQL> startup
ORACLE instance started.
Total System Global Area 1224736768 bytes
Fixed Size 2020384 bytes
Variable Size 218106848 bytes
Database Buffers 989855744 bytes
Redo Buffers 14753792 bytes
Database mounted.
ORA-01122: database file 10 failed verification check
ORA-01110: data file 10: '/oracle/database/tabjj_tab.dbf'
ORA-01251: Unknown File Header Version read for file number 10

SQL>
首先,得从数据库中删除这个有问题的文件。
SQL> startup mount
ORACLE instance started.
Total System Global Area 1224736768 bytes
Fixed Size 2020384 bytes
Variable Size 218106848 bytes
Database Buffers 989855744 bytes
Redo Buffers 14753792 bytes
Database mounted.
SQL> alter database datafile '/oracle/database/tabjj_tab.dbf' offline drop;
Database altered.

SQL> alter database open;
Database altered.
SQL>
数据库恢复正常。

以上只是测试环境下的操作,正式系统上,千万不能这样随意删除文件了。

非法删除数据文件导致数据库不能打开ORA-01122 ORA-01251