使用PLSql连接Oracle时报错ORA-12541: TNS: 无监听程序

摘要:
在oracle11成功安装之后,用PLSQL登陆的时候提示ORA-12541:TNS:无监听程序。机名输入localhost或127.0.0.1都会提示无监听程序。发现以下错误:TNSLSNRfor32-bitWindows:Version10.2.0.1.0-Productionon20-9月-200810:25:26Copyright1991,2005,Oracle.Allrightsreserved.系统參数文件为D:oracleproduct10.2.0db_1etworkadminlistener.ora写入D:oracleproduct10.2.0db_1etworkloglistener.log的日志信息写入D:oracleproduct10.2.0db_1etworkracelistener.trc的跟踪信息跟踪级别当前为0以pid=1704開始监听:监听该对象时出错:TNS-12545:因目标主机或对象不存在,连接失败TNS-12560:TNS:协议适配器错误TNS-00515:因目标主机或对象不存在,连接失败32-bitWindowsError:49:Unknownerror不再监听:第二步:查看oracle的监听程序是否启动进入dos窗体。

非常多时候为了优化我们的启动项把oracle的服务禁止了。但是重新启动启动之后使用PLSQL登陆oracle时会出现无监听程序,这说明我们有一些服务没有启动。我们先查看一下oracle的服务是否启动,查看方法是计算机-->>管理-->>服务和应用程序-->>服务,进行查找oracle的启动服务,

进入之后详细情况例如以下图:

使用PLSql连接Oracle时报错ORA-12541: TNS: 无监听程序第1张

在这里能够看到oracle的启动服务OracleServiceORCL和OracleOraDb11g_home1TNSLister,OracleDBCConsoleorcl等启动项都是没有启动,在这里把我上图中红色矩形框内的服务启动就能够了。

在oracle11成功安装之后,用PLSQL 登陆的时候提示ORA-12541: TNS:无监听程序。无法进行登陆。在这里总结了一下解决此类的办法,希望能够帮到大家。

第一种方法:因为地址分配不正确。我们这里须要又一次配置一下本机的环境。

oracle的安装环境中找到network,如图:

使用PLSql连接Oracle时报错ORA-12541: TNS: 无监听程序第2张

我的oracle安装到了D盘。所以你依据自己安装路径进行寻找,比如:D:appAdministratorproduct11.2.0dbhome_2NETWORK

LISTENER_ORCL =

(DESCRIPTION =

(ADDRESS_LIST =

(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))

)

(CONNECT_DATA =

(SERVICE_NAME = ORCL)

)

)

ORACLR_CONNECTION_DATA=

(DESCRIPTION =

(ADDRESS_LIST =

(ADDRESS = (PROTOCOL = IPC)(KEY =EXTPROC1521))

)

(CONNECT_DATA =

(SID = CLRExtProc)

(PRESENTATION = RO)

)

)

ORCL =

(DESCRIPTION =

(ADDRESS_LIST =

(ADDRESS = (PROTOCOL = TCP)(HOST =localhost)(PORT = 1521))

)

(CONNECT_DATA =

(SERVICE_NAME = ORCL)

)

)

改动后的代码{

(DESCRIPTION =

(ADDRESS_LIST =

(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))

)

(CONNECT_DATA =

(SERVICE_NAME = ORCL)

)

)

把里面的localhost改动成电脑随机生成的IP

机名输入localhost127.0.0.1都会提示无监听程序。

因为自己主动分配的IP地址会有变动,所以将oracle值中的host改成本机的计算机名。保存改动后的tnsnames.ora。再次连接(10.1.10.183/orcl)数据库。出错问题解决。

另外一种方法是详细查看oracle的系统。

详细流程例如以下:

第一步:查看oraclelog日志。

发现以下错误:
TNSLSNR for 32-bit Windows: Version 10.2.0.1.0 - Production on 20-9
-2008 10:25:26

Copyright (c) 1991,2005, Oracle. All rights reserved.

系统參数文件为D:oracleproduct10.2.0db_1 etworkadminlistener.ora
写入D:oracleproduct10.2.0db_1 etworkloglistener.log的日志信息写入D:oracleproduct10.2.0db_1 etwork racelistener.trc的跟踪信息跟踪级别当前为0

pid=1704開始

监听:

(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\.pipeEXTPROC1ipc)))
监听该对象时出错:(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=0.5.0.5)(PORT=1521)))
TNS-12545:
因目标主机或对象不存在,连接失败
TNS-12560: TNS:
协议适配器错误
TNS-00515:
因目标主机或对象不存在,连接失败
32-bit Windows Error: 49: Unknown error
不再监听:(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\.pipeEXTPROC1ipc)))

第二步:查看oracle的监听程序是否启动

进入dos窗体。快捷键是 菜单键+R。输入cmd。在dos窗体中输入lsnrctlstatus 查看你的执行状态。假设结果例如以下:

LSNRCTL for 32-bitWindows: Version 10.2.0.1.0 - Production on 20-9-2008 10:5
0:44

Copyright (c) 1991,2005, Oracle. All rights reserved.

正在连接到(DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1)))
TNS-12541: TNS:
无监听程序
TNS-12560: TNS:
协议适配器错误
TNS-00511:
无监听程序
32-bit Windows Error: 2: No such file or directory
正在连接到(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=0.5.0.5)(PORT=1521)))
TNS-12535: TNS:
操作超时
TNS-12560: TNS:
协议适配器错误
TNS-00505:
操作超时
32-bit Windows Error: 60: Unknown error

代表你的监听程序没有启动,须要你进行启动监听程序,启动方式有两种:一个是在dos中输入lsnrctl start就能够了。还有一种方式是:计算机à管理à服务à找到oracle的自启服务,找到OracleOraDb11g_home1TNSListener,点击启动就能够了。

第三种:重置监听程序,以及配置本地网络名称

我的电脑是window 7,所以从開始菜单中找到oracle的安装文件夹,找到Net Configuration Assistant打开之后,进行配置。主要配置是都过oracle自带的管理工具实现的,详细例如以下图:

使用PLSql连接Oracle时报错ORA-12541: TNS: 无监听程序第3张使用PLSql连接Oracle时报错ORA-12541: TNS: 无监听程序第4张使用PLSql连接Oracle时报错ORA-12541: TNS: 无监听程序第5张使用PLSql连接Oracle时报错ORA-12541: TNS: 无监听程序第6张使用PLSql连接Oracle时报错ORA-12541: TNS: 无监听程序第7张使用PLSql连接Oracle时报错ORA-12541: TNS: 无监听程序第8张使用PLSql连接Oracle时报错ORA-12541: TNS: 无监听程序第9张使用PLSql连接Oracle时报错ORA-12541: TNS: 无监听程序第10张使用PLSql连接Oracle时报错ORA-12541: TNS: 无监听程序第11张使用PLSql连接Oracle时报错ORA-12541: TNS: 无监听程序第12张使用PLSql连接Oracle时报错ORA-12541: TNS: 无监听程序第13张使用PLSql连接Oracle时报错ORA-12541: TNS: 无监听程序第14张使用PLSql连接Oracle时报错ORA-12541: TNS: 无监听程序第15张使用PLSql连接Oracle时报错ORA-12541: TNS: 无监听程序第16张使用PLSql连接Oracle时报错ORA-12541: TNS: 无监听程序第17张

这里的图片用的是网上搜寻的,只是方法我都使用了。由于那时候问题真的非常多,换了好几种方法。很多其它的知识朋友们能够搜寻一下我的公众平台:牧笛助手,账号:MuDi_Assistant,近期刚開始筹建。打算分享学习中的案例已经各种问题bug的解决方法。扫一扫二维码:

使用PLSql连接Oracle时报错ORA-12541: TNS: 无监听程序第18张

免责声明:文章转载自《使用PLSql连接Oracle时报错ORA-12541: TNS: 无监听程序》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇DB2中有关like的使用心得。Vue教程:组件Component详解(六)下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

ORACLE 错误案例—ORA-27102: out of memory

SQL> startupORA-27102: out of memoryLinux-x86_64 Error: 28: No space left on deviceAdditional information: 2097152 [oracle@kingdee-test ~]$ cat /etc/redhat-release CentOS relea...

Oracle数据库定义语言(DDL)

--使用Create遇见创建表 Create Tabletable_name ( column_name datatype [null|not null], column_name datatype [null|not null], ... [constraint]); --语法说明 table_name:数据库表名称。 column_name:表字段...

Oracle ORA12514 监听程序当前无法识别连接描述符中请求的服务

在连接数据库的时候,有时会遇到一个“ORA12514:监听程序当前无法识别连接描述符中请求的服务”的错误,这个错误其实就是数据库动态注册(关于动态注册会在稍后讲解)不生效,导致监听器无法识别客户端连接符中提供的服务名,从而拒绝建立数据库连接时报的错误信息,所以就需要对监听器配置做修改。 在这里,还需对问题进行细化,有时候可能会发现,在刚开启监听器的时候会发...

Windows下Oracle 11g安装以及创建数据库

安装数据库事实上Oracle安装 1、安装准备 Oracle的安装包下载以后是两个压缩包,同时选中两个压缩包右击进行解压   2、解压完成如下图所示   3、双击 setup.exe 文件进行安装,会弹出以下窗口   安全配置:随即会进入安装界面,此时让我们填写电子邮箱,邮箱不是必填选项,可填可不填,不填写的话会有一个提示,我们可直接无视,点击是进入下一步...

oracle pl/sql 变量

一、变量介绍在编写pl/sql程序时,可以定义变量和常量;在pl/sql程序中包括有:1)、标量类型(scalar)2)、复合类型(composite) --用于操作单条记录3)、参照类型(reference) --用于操作多条记录4)、lob(large object)    二、标量(scalar)——常用类型1)、在编写pl/sql块时,如果要使用...

ORACLE DBA命令

1 运行SQLPLUS工具sqlplus 2 以OS的默认身份连接/ as sysdba 3 显示当前用户名show user 4 直接进入SQLPLUS命令提示符sqlplus /nolog 5 在命令提示符以OS身份连接connect / as sysdba 6 以SYSTEM的身份连接connect system/xxxxxxx@服务名 7 显示当然...