网上思路:
1检查你的E:\app\product\11.2.0\dbhome_1\NETWORK\ADMIN\listener.ora目录文件下的SID号是否正确的,就是在装oracle数据库时自己设置的SID号,一般默认为ORCL,
2.检查你的oracle 数据库的两个服务是否是打开的,这两个服务分别为:OracleServiceORCL 和 OracleOraDb11g_home1TNSListener
3.如果以上都正确的话就需要重新装载数据库然后打开,具体的SQL语句为:SQL>startup pfile='D:\app\FuH\admin\orcl\pfile\init.ora.11182017132113'
描述:oracle、plsql正在运行突然失去连接,检查发现归档日志满,然后删除归档日志重启数据库,重启过程中疑似卡住,然后强制关闭命令窗口,接着就启动不了。
中途产生报错:已连接到空闲例程、ora-03113:通信通道的文件结尾、no login、ora-12514:TNS:监听程序当前无法识别连接描述符中请求的服务、ora-24324:未初始化服务句柄、ora-03114:未连接到ORACLE、ora-01034:ORACLE not available、ora-01219:数据库未打开:仅允许在固定表/视图中查询、ora-32001:已请求写入spfile,但是没有正在使用的spfile、
一、解决当前问题
ora-24324:未初始化服务句柄
指定ORACLE_SID
C:\user\admin> set ORACLE_SID=ORCL SQL> sqlplus / as sysdba; SQL> startup mount;
相关内容:一个oracle 多个数据库切换
1、在不退出sqlplus的情况下,直接在命令行输入conn username/password;即可完成切换。
2、在退出sqlplus的情况下,
windows下:set ORACLE_SID=db_name;
linux下:export ORACLE_SID = db_name;
再登录相应的用户即可完成切换。
二、解决alert.log问题
重启还有错误 ora-03113
Oracle出现错误,于是去错误日志里去找问题根源:D:\app\FuH\diag\rdbms\orcl\orcl\trace\alert_orcl.log
有两处错误:ora-19815、ORA-19809: 超出了恢复文件数的限制、db_recovery_file_dest_size也叫归档日志空间不足导致的、又调整归档日志大小
归档日志删除:
查询归档日志空间sql> select * from v$recovery_file_dest; rman target sys/orcl@orcl; 手动删除trac文件之前用 list archivelog all; delete archivelog all completed before'sysdate-7'; 手动删除trac文件之后用 crosscheck archivelog all; delete expired archivelog all;
设置非归档方式
http://blog.csdn.net/fengyifei11228/article/details/6049357
1 sql> archive log list; #查看是否是归档方式 2 sql> alter system set log_archive_start=false scope=spfile; #禁用自动归档 sql>alter system set log_archive_start=false scope=spfile; #启用主动归档 3 sql> shutdown immediate; 4 sql> startup mount; #打开控制文件,不打开数据文件 5 sql> alter database noarchivelog; #将数据库切换为非归档模式 6 sql> alter database open; #将数据文件打开 7 sql> archive log list; #查看此时便处于非归档模式
又报错,ora-32001:已请求写入spfile,但是没有正在使用的spfile,
SQL> show parameter spfile;
NAME TYPE VALUE
------------------------------------ -----------------------------------------
spfile string
值为空,表示数据库以pfile启动
切换成spfile启动:
sql> create spfile from pfile;
创建后重启数据库 value列有内容,重新更改归档日志大小,更改成功。
再次重启,startup成功