首先按照网友说的shutdown immediately,结果hang了半个小时也么反应。
然后检查日志,全盘搜索.trc,发现 (D:\app\oracle\diag\rdbms\cms1u\cms1u\trace)
进过分析,怀疑是由于归档已满导致数据库宕机,从而shutdown 无法生效。
再次google,手动删除了 归档文件 ,保留了最后一天的目录,文件位置: D:\app\oracle\flash_recovery_area\cms1u\ARCHIVELOG
再次百度 需要RMAN (命令 : rman target /) ,执行命令 crosscheck archivelog all;
报错 : 由于shutdown 命令正在执行,阻止一切新的数据库连接。
最终无奈
使用了 将shutdown immiediately ctrl +C 终止。
然后使用了 不推荐的 shutdown abort
几秒钟之后 数据库停止。
然后 接着使用 startup
报错 : ora-03113。
原因依然是和万恶的 ora-19815 有关。
遂决定先扩大归档的大小。然后再删除归档文件,最后再将归档关闭。
具体操作:
1:startup mount
2: show parameter db_rec
3:alter system set db_recovery_file_dest_size=5122m;
此时 另开窗口
4: RMAN target /
执行命令 crosscheck archivelog all;
执行命令 delete expired archivelog all;
至此归档文件被删除
接着步骤3 开始关闭归档模式
1:archive log list
2:shutdown immediate;
3:startup mount
4: alter database noarchivelog;
5: alter database open;
成功!
时间仓促就不截图了,希望遇到同样问题的朋友也能顺利解决!