我本机安装的数据库版本是ORACLE 11G R2,用plsql连接时候,报ora-12514如下错误:
但是在cmd里用sqlplus连接已经创建的用户时候,报如下错误:
ORA-01034 - Oracle not available
ORA-27101 - shared memory realm does not exist
网上查了几个解决资料,说是oracle home和sid的问题,或者是让使用Net Configuration Assistant重建本地网络服务名。实践了一下,都不管用。
经过总结,使用如下方法解决比较好:
1、首先看一下 ORACLE_BASEORACLE_HOMEDATABASE 下面的 ORADIM.LOG 文件
E:apppsunproduct11.2.0dbhome_1database:
看日志才发现原来报的下面的错误!!
ORA-00119: invalid specification for system parameter LOCAL_LISTENER
ORA-00132: syntax error or unresolved network name 'LISTENER_ORCL'
2、进过查找该错误,发现是tnsnames.ora文件中少了如下语句的原因
LISTENER_MAXIMO =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
添加后,重启数据库实例服务,重启监听程序:
再次使用SQLPLUS、plsql连接,好了,呵呵!
另:
LISTENER_ORCL =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC0))