项目场景:

出现ORA-01034: ORACLE not available ORA-27101错误

例如:项目场景:登录PLSQL客户端的时候,在保证用户和密码正确情况下依旧出现ORA-01034: ORACLE not available ORA-27101错误
出现ORA-01034和ORA-27101的原因是多方面的:主要是oracle当前的服务不可用,shared memory realm does not exist,是因为oracle没有启动或没有正常启动,共享内存并没有分配给当前实例.所以,通过设置实例名,再用操作系统身份验证的方式,启动数据库。这样数据库就正常启动了,就不会报ORA-01034和ORA-27101两个启动异常了。

还有就是可能是登录数据库后,不正常的退出,比如直接关掉窗口,而这时数据库里有未完成的动作,再次登录时就会提示“insufficient privileges”的报错,SQL>shutdown immediate; SQL>startup;就恢复正常了。

最后可能你虚拟机的共享内存问题,看下数据库的配置文件是否对应了512M内存?还是你设置的大了,本身给的不足?

1.先看oracle的监听和oracle的服务是否都启动了。
启动oracle监听:cmd命令行窗口下,输入lsnrctl start,回车即启动监听。

2.查看oracle的sid叫什么,比如创建数据库的时候,实例名叫“orcl”,那么先手工设置一下oralce的sid,cmd命令窗口中,set ORACLE_SID=orcl

3.再输入sqlplus /nolog,回车
再输入 conn / as sysdba;回车

4.再输入startup,回车.这步是启动oracle服务。如果startup启动被告知已经启动了,可以先输入shutdown immediate;等shutdown结束之后,再输入startup。

5.过几秒钟等命令运行完成,就能连接了。这个时候,可以输入"select * from user_tables;"测试一下,看是否有查询结果。

如果出现上面查询结果,那说明基本已经成功了。此时返回PL/SQL客户端界面就可以成功登录。如果还是不行请尝试修改密码进行以下步骤

以Windows操作系统为例,打开命令提示符,输入命令sqlplus /nolog ,进入oracle控制台,并输入 conn /as sysdba;以DBA角色进入。

连接成功后,输入“select username from dba_users”查看用户列表

若修改某一个用户密码, 修改用户口令 格式为:

alter user 用户名 identified by 新密码;

以system 为例,密码修改为 123456. 可输入

alter user system identified by 123456;

做完上述步骤后,困扰本人八九个小时的问题已经解决了!上面很多步骤都是参考他人的经验,我在这里一起总结了我成功的步骤,希望能够帮助更多人!

更多推荐

出现ORA-01034: ORACLE not available ORA-27101错误