错误描述:oracle登录或者使用PL/SQL Developer工具登录数据库时,无法登录,弹出"进程,会话为0"的提示信息。
原因:直接删除了某些datafile文件,如XX.dbf;xx.dmp等等数据库文件。oracle不允许这么粗暴的删除,需要使用命令删除,需要删除表空间及其包含的数据库文件。
drop tablespace name including contents and datafiles;
【注】不想删表空间,删了重新建表空间即可,目的达到。尚未找到直接删除数据文件,保留表空间的方法。因此建议不要将所有的数据文件都放在默认的用一个表空间中,新建一个用户实例,就建一个表空间,并设置默认表空间,以减小影响程度。
解决办法:
【1】打开sql plus窗口(在运行处搜索)
【2】用超级管理员身份登录:sys as sysdba
【注】口令,在安装oracle时,设定的密码。不记得管理员级别的口令,可以百度搜搜,有方法可以重置一下。
【3】关闭oracle例程,卸载数据库:shutdown immediate;
【4】重启oracle例程:startup mount;
【5】将误删的数据库文件进行脱机处理(offline drop)
【注】上述的datafile路径及文件名如果不记得的话,可以使用以下命令,获得提示,然后补充完善上面这条命令。
alter database open
【6】打开数据库
至此,可以成功登陆数据库了。