ORACLE数据库逐步解决ORA-12541ORA-01034和ORA-27101ORA-00119和ORA00132的过程

Posted gdjlc

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ORACLE数据库逐步解决ORA-12541ORA-01034和ORA-27101ORA-00119和ORA00132的过程相关的知识,希望对你有一定的参考价值。

刚开始时,有一台服务器的ORACLE 11G数据库连接不上,报错:ORA-12541:TNS:无监听程序
重启服务里面的两个Oracle服务,都没解决。
在网上看到一篇文章说另一种可能是oracle目录目录下listener.log日志文件过大(达到4G,据说这是oracle在windows系统下的bug)导致的。
搜索找到listener.log,果然文件已经是4GB。
于是停止服务里面的Oracle监听服务,重命名listener.log做备份,例如listener.log.bak。
启动Oracle监听服务,会自动生成一个新的listener.log。
PLSQL连接数据库,这次却报了另一个错误:
ORA-01034:ORACLE not available
ORA-27101:shared memory realm does not exist

解决过程:
数据库所在服务器,cmd命令行中
1、输入:

sqlplus /nolog

2、输入:

conn /as sysdba

3、输入:

startup

这时报错:
ora-00119:invalid specification for system parameter LOCAL_LISTENER
ora-00132:syntax error or unresolved network name \'LISTENER_ORCL\'

  4、找到init.ora.1112015105811(1112015105811每台机器不一样),路径在

D:\\app\\lc\\admin\\orcl\\pfile\\init.ora.1112015105811

先复制一份做备份,用记事本打开init.ora.1112015105811,找到下面行

local_listener=LISTENER_ORCL

把LISTENER_ORCL修改为tnsnames.ora中的ADDRESS_LIST的值,如下(HOST值根据实际修改)

local_listener="(ADDRESS = (PROTOCOL = TCP)(HOST = 172.16.1.100)(PORT = 1521))"

5、回到命令行窗口中,输入:

create spfile from pfile = \'D:\\app\\lc\\admin\\orcl\\pfile\\init.ora.1112015105811\';

6、输入:

startup

这次终于没报错了,提示:ORACLE例程已经启动。用PLSQL成功连接数据库。

以上是关于ORACLE数据库逐步解决ORA-12541ORA-01034和ORA-27101ORA-00119和ORA00132的过程的主要内容,如果未能解决你的问题,请参考以下文章

连接Oracle远程数据库错误:ORA-12541,ORA-12514,ORA-01017的解决方法!

打开Plsql报错 ORA-12541:TNS:无监听程序 求解决办法

Oracle ORA 12541 报错解决过程

Oracle ORA-12541:TNS:无监听程序

Oracle ORA-12541,ORA-12514错误

在连接本机oracle数据库的时候提示:ORA-12541:TNS:没有监听程序