由于表空间容量不足,需要增加表空间容量,于是在原表空间上新建一个表空间并增加到原表空间上,由于不熟练,导致没有建成功。在创建的过程中,对新添加的表空间进行了多次添加和删除。当时,没有重启机器。所以,没有发现什么问题,用着一切正常。但事事难料,由于夏季用电量大,导致保险丝烧掉,于是造成大面积断电。这台主机也没有幸免。就是这次断电,导致了悲剧的发生。 当来电之后,再次打开机器,在登录oracle用户时,报“用户的$home/.dmrc已被忽略,这将无法保存 默认会话和语言。该文件应该由用户所有,并且权限设置为644。用户的$home目录应由用户自己所有,别的用户也无法写入”错误。当时没有解决,直接忽略进入系统。进入系统打开sqlplus连接不上指定用户。于是就开始连接sys用户,sys用户可以连接上去,这说明oracle服务打开了。测试监听和em都打开了。打开em一看,监听正常,实例没有打开。而且报出“ora-01033:oracle initialization or shutdown in progress”。这时,就想到了,shutdown oracle之后再startup一次,看看能不能打开oracle实例。于是,按着自己的想法就测试一下。在关闭重启之后,问题依旧。于是,就在网上搜索一下。
自己总结一下,需要先修正登录oracle用户时的错误。于是就按照网上所说的修改权限的方法,于是就用解决办法: 来修改登录oracle用户的错误。解决完这一错误之后,接着需要解决oracle实例的错误。 这是需要先用sqlplus sys/密码 as sysdba, 登录sqlplus之后, SQL> shutdown immediate
ORA-01109: 数据库未打开
Total System Global Area 171966464 bytes
SQL> alter database open;
SQL> alter database open resetlogs;
SQL> alter database datafile 11 offline drop; //(这里的“11”就是前面的“数据库文件 11”)
*
SQL> alter database open;
SQL> startup mount;
Total System Global Area 171966464 bytes 到此,问题解决了。 (责任编辑:IT) |