某个数据文件损坏,如何打开数据库?(forLinux)

王朝system·作者佚名  2008-05-18
窄屏简体版  字體: |||超大  

某个数据文件损坏,如何打开数据库? (for Linux)

PuJiang Science Park Of ShangHai 、 jccz_zys_zhouys

最近做开发时不小心删除了创建的数据库表空间文件,导致服务器重新启动时普通用户

不能够正常登陆。网上有一篇此类文章是针对winnt和oracle8i的。我通过简单的尝试即解决了此问题,过程如下:

系统环境:

1、操作系统:RedHat Advanced Server,机器内存512M

2、数据库:

Oracle 9i Release 9.2.0.1.0 for linux

3、安装路径:/home/oracle/ora

错误现象:

因误操作,数据库中某一数据文件被误删,

Oracle相关服务显示已启动,用SQL*Plus可以连接sys DBA用户,但普通用户无法连接,

显示以下错误

ORA-01033: ORACLE initialization or shutdown in progress

模拟现象:

create tablespace tablespace_ecms

datafile '/home/oracle/ora/products/9.2.0/oradata/ora9i/tablespace_ecms.dbf'

size 512M extent management local autoallocate

--default storage (initial 128k next 2M pctincrease 0)

online;

shutdown

在操作系统中删除tablespace_ecms.dbf文件

[oracle@js-oracle oracle]$ sudo - oracle -c "dbstart" >> /var/log/oracle

[oracle@js-oracle oracle]$ sudo - oracle -c "lsnrctl start" >> /var/log/oracle

在客户端PL/SQL工具中正常连接sys DBA用户,但数据库没有打开,同时普通用户无法连接,

显示以下错误

ORA-01033: ORACLE initialization or shutdown in progress

解决方法:

先让该数据文件脱机,就可以打开数据库

--NOARCHIVELOG模式命令

[oracle@js-oracle oracle]$ sqlplus /NOLOG

SQL> connect sys/wellhope as sysdba

SQL> alter database datafile '/home/oracle/ora/products/9.2.0/oradata/ora9i/tablespace_ecms.dbf' offline drop;

SQL> alter database open; --则数据库正常打开

SQL> select file#,name,status from v$datafile;

SQL> drop tablespace tablespace_ecms INCLUDing contents;

表空间已丢弃。

如有不足,请指正。

jccz_zys@163.net

阅读:805次

责任编辑:jccz_zys_zhouys

来源:某个数据文件损坏,如何打开数据库?(for Linux)

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航