解决Oracle无监听错误

合集下载

oracle监听器启动出错:本地计算机上的oracleoradb11g home1tnsl

oracle监听器启动出错:本地计算机上的oracleoradb11g home1tnsl

Oracle监听器启动出错:本地计算机上的OracleOraDb11ghome1TNSL...分类:Oracle一、错误描述登陆PL/SQLDeveloper登陆本地数据库时先报没有监听程序,查看服务发现Oracle监听服务没有启动。

右击启动监听程序,报错:错误描述:本地计算机上的OracleOraDb11g_home1TNSListener服务启动后又停止了。

一些服务自动停止,如果它们没有什么可做的,例如"性能日志和警报"服务。

二、原因分析你安装oracle的时候是连网的,那么listener.ora文件里的HOST=网络给你分配的IP地址,而在你断网的时候就会出现这样的情况。

三、解决办法方法一:监听器通过listener.ora或者NetManager修改监听器配置。

将原来本地字符串127.0.0.1或者localhost改为主机名。

首先查阅你的**product11.2.0dbhome_1NETWORKADMIN目录下的"tnsnames.ora"和"listener.ora"这两个文件,然后看看里面的"HOST"信息,看看是不是你当前的ip地址,如果不是尝试着把这个2个文件改成你的ip地址,或直接就改成127.0.0.1(或计算机名字):注意:此时的监听配置文件"listener.ora"里面的HOST=的内容(IP或者主机名)必须和,服务配置文件"tnsnames.ora"里面,你想要链接的服务的HOST=的内容完全一致。

意思就是说要么都是IP地址,要么都是主机名。

如果有多个服务(NetManager中配置的网络服务)那么查看"tnsnames.ora"文件中与监听HOST内容一致的PL/SQL才可正常登录进去,否则无监听程序。

如:上面这里是"listener.ora"里面的HOST,我的是主机名。

Oracle网络(监听)不通,需要检查的十一个事项

Oracle网络(监听)不通,需要检查的十一个事项

Oracle网络(监听)不通,需要检查的十一个事项重点提示:①如果能ping通,主库自己连自己和连备库都可以连得上,备库连不上主库,说明是TNS没有问题,是网络的连接出了问题,重点检查防火墙②修改过hostname,配置监听tns不成功的话,可以尝试完全关闭后重启主机,再重新连接检查。

ERROR:ORA-12543: TNS:destination host unreachableTNS报错:12543 的解决过程1、service_name错,初始化参数是从备库考过来的,所以一重启主库的服务名就变成备库的了2、网上查可能是对接口有限制,网上查2481也可作为静态监听的接口,把两边都是1526接口,变成了主库改成2481接口,后证明不是这方面的问题3、各方面设置都无误,防火墙两边都关闭,尝试重启,退出主库sqlplus时卡死,关主机,重启后,发现防火墙自动开启,关闭防火墙之后,连接正常。

怀疑是改过一次hostname主机名导致。

Oracle网络(监听)不通,需要检查的十一个事项:1、检查etc/hosts2、ping 网络看通不通3、iptables -L查看防火墙是否关闭Service iptables stop 关闭防火墙chkconfig iptalbes off 防止防火墙开机自动重启:4、检查service names,包括初始化参数中的service names5、检查SID name6、通过简单连接,检查ip地址映射是否有误,能连上说明是ip映射的问题简单连接写法:Sqlplus sys/oracle@192.168.128.128:1526/beijing as sysdba7、通过scott连接,检查口令文件是否正确8、通过授权检查口令文件grant sysdba to user;ORA-01994:授权失败:口令文件丢失或禁用。

看是否有权限,如果没有权限,说明口令文件有问题9、tnsping 如果出现字符串且无报错,说明tns正常,不是tns配置文件的问题10、检查监听里面显示的服务名、实例名,监听的端口等配置文件11、如果修改过hostname,以上方法都不能解决的,建议尝试完全关闭后重启主机,再重新检查补充:linux的防火墙一般是iptables,还有一个是selinux,要开机关闭这两个方法如下:1、开机不自动启动iptables使用命令:chkconfig iptalbes off命令2、开机不启动selinux,需要更改文件vi /etc/selinxu/config 和vi /etc/sysconfig/selinux 两个文件,将其中的SELINUX=enforcing改为SELINUX=disabled启服务器即可。

Oracle监听启动时由“监听程序不支持服务”引出的一系列问题--解决方案

Oracle监听启动时由“监听程序不支持服务”引出的一系列问题--解决方案

Oracle监听启动时由“监听程序不⽀持服务”引出的⼀系列问题--
解决⽅案
由于甲⽅服务器短缺,GB领导叫在⼀个数据库上建三个oracle实例,由于之前没尝试过这样做,故⽽在本地做了⼀下测试,新建完三个实例的时候重启监听程序,就报了“监听程序不⽀持服务”的错误(只想X狗)。

然后⽤plsql连接oracle服务端是连不上的,具体错误五花⼋门。

然后⽹上⼀顿查找,最终锁定是oracle的listerner.ora配置的不对(⾃⼰意淫是由于配置了多个实例,导致此⽂件在启动的时候不知道找哪⼀个实例了)
于是乎在listerner.ora最上边加上⼀⼩段配置,指定⼀下实例就⾏了。

然后重启⼀下监听。

⼀切正常,plsql也可以愉快的连接了。

希望有问题⼤家⼀起交流,⼀起进步,完结撒花~。

Oracle 无监听程序解决办法(HZQ)

Oracle 无监听程序解决办法(HZQ)

ORACLE无监听程序解决办法
1ORA-12541: TNS: 无监听程序 (1)
2监听程序无法启动 (2)
1ORA-12541: TNS: 无监听程序
使用NetManager配置服务别名,或用PL/SQL Developer登录数据库时,系统报:ORA-12541: TNS: 无监听程序。

问题产生的原因可能是:
数据库的监听器没有启动。

解决办法是启动监听器即可。

更改了数据库服务器的IP或计算机名。

这个问题的解决办法有两种:
(1)使用sqlplus命令时,不使用“@指定服务”,默认会登录到本机,这时不
需要监听器启动。

例如使用scott用户登录:sqlplus scott/tiger
(2)修改监听器的配置文件“listener.ora”,然后重启监听器服务。

使用Windows查找功能查找到“listener.ora”文件,如果查找出多个相同文件名的文件,则修改“ADMIN”目录下的这个文件。

修改红色的部分,修改成自己机器的主机名。

然后重启计算机。

2监听程序无法启动
如果启动数据库监听器时启动不了,解决办法和上面一样,修改监听器的配置文件“listener.ora”,然后重启计算机。

参见上面的解决方法。

OracleTNS无监听程序

OracleTNS无监听程序

OracleTNS⽆监听程序
这个问题上次给单位服务器重启的时候也发现了,今天再次⼜出现了同样的问题。

上次没有记录,这次记录⼀下吧。

以免⾃⼰后⾯⼜忘记了。

打开的oracle读取的时候,会报错没有监听程序。

⼤部分帖⼦都是说去重新配置监听程序。

上次我查找这个问题也查找了半天,后来,才偶然看到⼀个帖⼦说,应该是⽇志⽂件太⼤了。

真是柳暗花明⼜⼀村啊。

于是赶紧查找路径,在diag/tnslsnr/⽬录下,有个listener.log⽇志。

我⼀看,居然4个GB了。

于是通过windows 服务,停⽌oracle监听服务器OracleOraDb11g_home1TNSListener 停⽌后,将listener.log改名备份。

再启动监听服务就可以了。

世界终于安静了。

如何解决oracle中监听无法启动找不到系统路径

如何解决oracle中监听无法启动找不到系统路径

如何解决oracle中监听无法启动找不到系统路径!2007-09-15 11:33今天上午,在登入oracle时空然我提示找不到监听.在启动监听服务时出现无法启动OracleOraHome92TNSListener服务错误3系统找不到指定的路径!从客户端连接到服务器,出现了这个错误,ora12541-TNS 没有监听器于是,在服务器中启动OracleOraHome92TNSListener服务,显示“在本地计算机无法启动OracleOraHome92TNSListener服务,错误3,系统找不到指定路径”。

原因:Windows优化大师将Oracle的监听服务给优化了还有一种造成本地oracle无法启动的原因是安装时的主机名与当前主机名不同,也就是说安装完oracle后更改了主机名造成。

解决办法1;打开注册表(regedit)找到HKEY_LOCAL_MACHINE/SYSTEM/CurrentContorlSet/Services/OracleOraHome92T NSListener找到后单击,在右侧里面单击右键,新建一个(可扩充字符串值)起名字为 ImagePath 在数值数据中写入C:\oracle\ora92\BIN\TNSLSNR 后退出注册表,重新启动即可。

(其中C:\oracle\ora92\BIN\TNSLSNR 是你oracle安装目录中的一个.exe文件:方法2:进入注册表中修改ImagePath在运行处执行REGEDIT进入注册表到HKEY_LOCAL_MACHINESYSTEM CurrentControlSet ServicesOracleOraHome92TNSListener发现ImagePath关键值没有了,增加他,选择可扩充字符串值,编辑字符串的数值数据为:fOracleOra92BINTNSLSNR退出注册表。

启动监听器即可!进入注册表中修改ImagePath在运行处执行REGEDIT进入注册表到HKEY_LOCAL_MACHINESYSTEM CurrentControlSet ServicesOracleOraHome92TNSListener发现ImagePath关键值没有了,增加他,选择可扩充字符串值,编辑字符串的数值数据为:fOracleOra92BINTNSLSNR退出注册表。

oracle数据库ORA-12541TNS无监听程序-错误解决方法

oracle数据库ORA-12541TNS无监听程序-错误解决方法

在用PL/SQL Developer连接数据库时出现“ORA-12541:TNS:无监听程序”错误。

1、检查listener.log日志发现下面错误:TNSLSNR for 32-bit Windows: Version 10.2.0.1.0 - Production on 20-9月-2008 10:25:26Copyright (c) 1991, 2005, Oracle. All rights reserved.系统参数文件为D:\oracle\product\10.2.0\db_1\network\admin\listener.ora写入D:\oracle\product\10.2.0\db_1\network\log\listener.log的日志信息写入D:\oracle\product\10.2.0\db_1\network\trace\listener.trc的跟踪信息跟踪级别当前为0以 pid=1704 开始监听: (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROC1ipc))) 监听该对象时出错: (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=\\.\pipe\EXTPROC1ipc)))2、查看Oracle的listener是否启动C:\Documents and Settings\mengzhaoliang>lsnrctl statusLSNRCTL for 32-bit Windows: Version 10.2.0.1.0 - Production on 20-9月-2008 10:50:44Copyright (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原来没有启动listener,用“lsnrctl start”命令也不能启动。

Oracle常见错误及解决方法

Oracle常见错误及解决方法

Oracle常见错误及解决⽅法1、ORA-12541:TNS:没有监听器原因:没有启动监听器或者监听器损坏。

如果是前者,使⽤命令net start OracleOraHome81TNSListener(名字可能有出⼊)即可;如果是后者,则使⽤“Net8 Configuration Assistant”⼯具向导之“监听程序配置”增加⼀个监听器即可(基本不⽤写任何信息,⼀路OK。

在添加之前可能需要把所有的监听器先删除!)2、ORA-12500:TNS:监听程序⽆法启动专⽤服务器进程或 ORA-12560:TNS:协议适配器错误原因:ORACLE的数据库服务没有启动。

使⽤命令net start ORACLESERVICEORADB(ORADB为数据库名字)即可。

如果仍没有解决,请继续向下看。

3、如果数据库服务启动失败,则很有可能是其注册表项值损坏,最好的做法是以下两步:1)ORADIM -DELETE -SID oradb 删除数据库服务项2)ORADIM -NEW -SID oradb 新增数据库服务项注:这个过程中如果出错,就重启计算机!4、ORA-12154:TNS:能解析服务名原因:ORACLE的⽹络服务名没有正确配置。

请使⽤“Net8 Configuration Assistant”⼯具向导之“本地⽹络服务名配置”配置TNS即可。

如果仍没有解决,请继续向下看。

5、ORA-1034 :TNS:ORACLE不可⽤原因:ORACLE的数据库服务正确启动,但是数据库没有打开!使⽤命令:1)svrmgrl 启动服务管理器2)connect internal 以internal⾝份登陆3)startup 打开数据库6、ORA-12560:TNS:协议适配器错误(顽固性的)原因:未知。

解决:必杀技--打开“Windows任务管理器”,杀死ORACLE.exe及ORADIM.exe进程,书写⾃⼰的ora_startup.bat,执⾏之!7、ORA-12638:⾝份证明检索失败原因:服务端开了防⽕墙,且使⽤了本地操作系统认证解决:修改sqlnet.ora⽂件,1)NTS改为NONE,oracle将采⽤⼝令⽂件认证(此时 remote_login_passwordfile=exclusive)如connect /as sysdba 登录,后报错RA-01031: insufficient privileges,实际上是要求你输⼊sysdba的⽤户名和密码SQLNET.AUTHENTICATION_SERVICES= (NONE)2)修改查找连接的字符串顺序:tnsnames.ora,直接使⽤简单连接字符串,使⽤计算机名称NAMES.DIRECTORY_PATH= (TNSNAMES, EZCONNECT, HOSTNAME)8、ArcSDE数据被锁定后的解锁⽅法描述:(1)删除所选对象失败锁定请求与已有锁定冲突。

Oracle数据库监听配置与报错解决方法

Oracle数据库监听配置与报错解决方法

Oracle数据库监听配置与报错解决方法作者:范美卉张俊萌来源:《电脑知识与技术》2023年第24期关键词:监听日志;Oracle数据库;监听器中图分类号:TP311 文献标识码:A文章编号:1009-3044(2023)24-0073-030 引言想要使用Oracle数据库,首先需要用户与数据库建立连接,而怎么在两者之间建立连接,Oracle使用了一个叫网络服务的概念,从而客户端或者中间层的应用服务器与数据库服务器能建立连接,并能在两者之间传递数据。

在客户端,网络服务作为后台运行的进程,在数据库服务器端,网络服务则通过一个叫“监听器”的组件接收来自客户端的连接请求。

监听器(LIS⁃TENER)是位于服务器端的、独立运行的一个后台进程,运行在服务器端,但独立于数据库服务器单独运行,在数据库没有启动的时候,监听器也能独立运行。

1 Oracle 数据库监听配置Oracle监听负责监听客户端传入的连接请求,同时也负责调整服务器的连接负荷。

客户端试图连接数据库服务器时,监听器将接收到客户端的请求并将其传递给服务器进行处理。

一旦客户端与服务器建立连接,它们之后将直接进行通信,而不再需要监听器的介入,监听器将保持空闲状态。

dbca建库后一般会有默认配置好的监听,默认服务端口是1521,通常一个库一个监听就足够,但如果需要处理大量并发请求数,就可能需要配置多个监听,非默认监听的端口号设置成大于1024,不同监听之间服务名和端口号不能一样[1]。

配置监听器有两种方法。

1.1 通过图形界面工具Net Manager如图1所示,选中图中的Oracle Net配置下的本地树形目录中的监听程序项,再点击左侧绿色的“+”按钮添加监听程序,点击监听程序目录,新加的监听器名称默认为LISTENER。

选中该名称,窗口右侧栏的下拉选项中含有四个选项:一般参数、监听位置、数据库服务、其他服务,选中“监听位置”,点击添加地址按钮。

在出现的网络地址栏的协议下拉选项中选中“TCP/IP”,主机文本框中输入主机名称或IP地址(如果主机即用作服务端也作为客户端,输入两项之一均有效;如果主机作为服务端并需要通过网络连接,建议输入IP地址),端口文本框中输入数字端口,默认是1521,也可以自定义任意有效数字端口[2]。

解决ora-12541TNS无监听程序

解决ora-12541TNS无监听程序

解决ora-12541TNS⽆监听程序plsql远程访问数据库解决ora-12541:TNS:⽆监听程序本机为win7 32位系统,为了学习oracle,装了个vbox虚拟机,再装了个win7虚拟机,内装oracle 11g(win7如果要装10g,要选择vista版本,win版本会安装报错).oracle11g安装完后有报了个错误,当时没注意,现在也忘了什么错了,但是不影响使⽤.后来想在本机安装plsql来远程连接虚win7上的oracle.查了⼀些资料,步骤如下:1.下载plsql,安装.2.下载Instant Client,点击下载,下载第⼀个basic就⾏了,下载完解压缩,以放到主win7 d盘根⽬录为例:d:\instantclient_11_23.在d:\instantclient_11_2新建tnsnames.ora,⽤记事本编辑.4.到虚win7上的oracle安装⽬录找到 …\app\admin\product\11.2.0\dbhome_1\NETWORK\ADMIN\tnsnames.ora,打开,⽐如数据库实例是orcl,找到如下代码,拷贝到本机d:\instantclient_11_2\tnsnames.ora⾥ORCL =(DESCRIPTION =(ADDRESS = (PROTOCOL = TCP)(HOST = 虚拟机IP)(PORT = 1521))(CONNECT_DATA =(SERVER = DEDICATED)(SERVICE_NAME = orcl)))5.添加⼀个环境变量,名为TNS_ADMIN,值为tnsnames.ora⽂件所在路径d:\instantclient_11_2\tnsnames.ora,plsql通过这个找到orcl连接字符串6.添加⼀个环境变量NLS_LANG = SIMPLIFIED CHINESE_CHINA.ZHS16GBK7.打开PLSQL,不⽤登陆,⼯具-⾸选项-ORACLE-连接:勾选检查连接Oracle主⽬录: d:\instantclient_11_2OCI库: d:\instantclient_11_2\oci.dll经过以上⼏步之后,重启PLSQL,问题来了,报错:ora-12541:TNS:⽆监听程序. ping是可以ping得通的,虚win7上的监听也开着.经过不懈的努⼒,多次试验终于解决了:1.虚拟机⽹络选择桥接,并在虚拟机内⽹络连接IPV4设置静态IPIP地址:192.168.1.111 (111可修改成⾃⼰的 1-255)⼦⽹掩码:255.255.255.0默认风头:192.168.1.1⾸选DNS服务器:192.168.1.1修改完记得主win7上 ping 192.168.1.111 ping得通再继续往后.2.修改..\app\admin\product\11.2.0\dbhome_1\NETWORK\ADMIN\listener.oraSID_NAME = CLRExtProc 改为 SID_NAME = orcl orcl是实例名HOST = localhost 改为 HOST = 192.168.1.1113.修改..\app\admin\product\11.2.0\dbhome_1\NETWORK\ADMIN\tnsnames.ora两处 HOST = localhost 改为 HOST = 192.168.1.111SID = CLRExtProc 改为 SID = orcl好了,重启oracle,监听,主win7上的plsql就可以远程连接虚拟机上的数据库了.。

oracle解决监听问题导致连接失败的的三种方法

oracle解决监听问题导致连接失败的的三种方法

一.使用netca命令适用范围:从服务中能看到监听服务是启动状态,但还是连接不上数据库,报ORA-12505,ORA-12518,TNS-04406等错误解决方法:1.运行-cmd打开dos窗口,输入netca,删除现有监听2.进入到oracle_home\bin下输入netca,重建监听二.手动修改监听文件适用范围:当方法一失效时解决方法:进入oracle_home\network\admin\下,编辑listener.ora文件为如下格式并保存:SID_LIST_LISTENER =(SID_LIST =(SID_DESC =(SID_NAME = PLSExtProc)(ORACLE_HOME =”路径”)(PROGRAM = extproc))(SID_DESC =(SID_NAME = “SID”)(ORACLE_HOME = “路径”)(PROGRAM = “SID”)))LISTENER =(DESCRIPTION_LIST =(DESCRIPTION =(ADDRESS = (PROTOCOL = TCP)(HOST = “主机ip”)(PORT = 1521))(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC0))))三.修改监听文件为9i格式适用范围:当方法一和二都失效时解决方法: 进入oracle_home\network\admin\下,编辑listener.ora文件为如下格式并保存:SID_LIST_LISTENER =(SID_LIST =(SID_DESC =(SID_NAME = PLSExtProc)(ORACLE_HOME = “路径”)(PROGRAM = extproc))(SID_DESC =(SID_NAME = “SID”)(ORACLE_HOME = “路径”)(GLOBAL_DBNAME = “SID”)))LISTENER =(DESCRIPTION_LIST =(DESCRIPTION =(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))(ADDRESS = (PROTOCOL = TCP)(HOST = “主机ip”)(PORT = 1521)) ))。

ORACLE启动监听失败

ORACLE启动监听失败
解决方法:
SQL> startup
ORACLE例程已经启动。
Total System Global Area 135338868 bytes
Fixed Size 453492 bytes
Variable Size 109051904 bytes
Database Buffers 25165824 bytes
)
)
)
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = /home/oracle/oracle10g)
(PROGRAM = extproc)
)
(SID_DESC =
(GLOBAL_DBNAME = zxin)
ff02::3 ipv6-allhosts
192.168.1.105linux-3gb//linux-3gb为主机名
3.查看/home/oracle/oracle10g/network/admin/listener.ora下的hostname
linux-3gb:~ # cat /home/oracle/oracle10g/network/admin/listener.ora
ORACLE启动监听失败?
1.查看主机名字:uname–n或hostname,修改主机名字命令:hostname主机名
linux-3gb:~ # uname -n
linux-3gb//此为主机名
2.查看/etc/hosts下hostname名字
linux-3gb:~ # cat /etc/hosts
你可以在.bashrc里面加进:

无法启动oracle监听处理

无法启动oracle监听处理

【LISTENER】主机名修改为IP地址后LISTENER无法监听到实例----为什么listener.ora文件里面HOST后面到底应该输入IP地址还是主机名。

我的经验告诉我,这边最好使用主机名。

很多的时候,一个机器绑定的不只一个IP地址,如HOST后面是IP地址,那么ORACLE的listener只会监听指定的IP地址的访问请求,本机其它IP地址的连接都会拒绝的。

另外,创建监听的时候,listener.ora文件默认创建的就是主机名。

那么,如果没有特别的需要,就不要再去画蛇添足的修改host_name为IP地址了。

将listener.ora和tnsnames.ora文件中的HOST信息从原来的主机名字修改为IP地址后,监听可以启动,但是无论如何也监听不到数据库实例的信息(即使反复重启数据库)。

修改后重新启动监听,但是监听一直保持在如下的状态LSNRCTL> statusConnectingto(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=144.194.192.183)(PORT =1521)))STATUS of the LISTENER------------------------Alias LISTENERVersion TNSLSNR for Linux: Version 10.2.0.1.0 - ProductionStart Date 21-JUL-2009 14:34:20Uptime 0 days 0 hr. 0 min. 36 secTrace Level offSecurity ON: Local OS AuthenticationSNMP OFFListener Parameter File /oracle/app/oracle/product/10.2.0/db_1/network/admin/listen er.oraListener Log File /oracle/app/oracle/product/10.2.0/db_1/network/log/li stener.logListening Endpoints Summary...(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=144.194.192.183)(PORT= 1521)))(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC0)))Services Summary...Service "PLSExtProc" has 1 instance(s).Instance "PLSExtProc", status UNKNOWN, has 1 handler(s) for this service...The command completed successfully.【问题原因】罪魁祸首在/etc/hosts文件!!先看一下在我处理之前该文件的内容:[root@testdb ~]# cat /etc/hosts# Do not remove the following line, or various programs# that require network functionality will fail.127.0.0.1 testdb localhost.localdomain localhost::1 localhost6.localdomain6 localhost6在这种默认配置下(操作系统安装后的状态),主机名字和本机的IP地址没有对应起来. .【问题解决】(1)将/etc/hosts内容修改为:[root@testdb ~]# cat /etc/hosts# Do not remove the following line, or various programs# that require network functionality will fail.127.0.0.1 localhost.localdomain localhost::1 localhost6.localdomain6 localhost6144.194.192.183 testdb比较一下与之前文件的不同,这里修改的内容如下:1)将127.0.0.1后面的testdb主机名删除2)添加IP地址和主机名对应关系144.194.192.183 testdb通过ping主机名testdb的方式验证一下修改后的效果:ora10g@testdb /home/oracle$ ping testdbPING testdb (144.194.192.183) 56(84) bytes of data.64 bytes from testdb (144.194.192.183): icmp_seq=1 ttl=64 time=0.082 ms64 bytes from testdb (144.194.192.183): icmp_seq=2 ttl=64 time=0.047 ms64 bytes from testdb (144.194.192.183): icmp_seq=3 ttl=64 time=0.050 ms到此,主机名testdb与IP地址144.194.192.183建立起了对应关系。

连接Oracle数据库时报ORA-12541:TNS:无监听程序的图文解决教程

连接Oracle数据库时报ORA-12541:TNS:无监听程序的图文解决教程

连接Oracle数据库时报ORA-12541:TNS:⽆监听程序的图⽂解决教程在⽤PL/SQL Developer等客户端⼯具连接oracle服务器时出现ORA-12541:TNS:⽆监听程序的错误,如下图:发现原来是oracle的监听没有启动,重启监听后就连接成功了,下⾯跟⼤家分享⼀下如何启动oracle的监听。

1.在安装Oracle服务器的主机上,打开Net Configuration Assistant2.选择监听程序配置,下⼀步3.选择重新配置,下⼀步 4.选择监听程序,默认,下⼀步 注:如果你的监听已启动,则出现提⽰框,选择是 5.选择协议,使⽤默认的TCP协议,下⼀步 6.选择端⼝号,使⽤标准端⼝号1521,下⼀步 7.不配置另⼀个监听程序,选择否,下⼀步 8.监听程序配置完成,下⼀步 重配服务名,测试连接 1.选择Net服务器配置,下⼀步 2.选择重新配置,下⼀步 3.选择数据库名,下⼀步 4.填写服务名,也就是你创建数据库时的全数据库名,下⼀步 5.选择TCP协议,下⼀步 6.填写主机名(可填写你的IP地址,也可填写你的主机名),使⽤标准端⼝号1521,下⼀步 7.进⾏测试,下⼀步 8.选择更改登录 9.填写⽤户名和⼝令,确定 10.测试连接成功,下⼀步 11.⽹络服务名,默认(和之前的数据库名⼀样),下⼀步 12.不配置另⼀个Net服务名,选择否,下⼀步 服务名配置完毕,下⼀步,完成 启动PL/SQLDeveloper,输⼊⽤户名和⼝令,登录成功以上所述是⼩编给⼤家介绍的连接Oracle数据库时报ORA-12541:TNS:⽆监听程序的图⽂解决教程,希望对⼤家有所帮助,如果⼤家有任何疑问请给我留⾔,⼩编会及时回复⼤家的。

在此也⾮常感谢⼤家对⽹站的⽀持!。

oracle数据库ORA-12541TNS无监听程序-错误解决方法

oracle数据库ORA-12541TNS无监听程序-错误解决方法
32-bit Windows Error: 49: Unknown error
不再监听: (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROC1ipc)))
2、查看Oracle的listener是否启动
C:\Documents and Settings\mengzhaoliang>lsnrctl status
# Generated by Oracle configuration tools.
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = D:\oracle\product\10.2.0\db_1)
4:40
Copyright (c) 1991, 2005, Oracle. All rights reserved.
启动tnslsnr: 请稍候...
TNSLSNR for 32-bit Windows: Version 10.2.0.1.0 - Production
系统参数文件为D:\oracle\product\10.2.0\db_1\network\admin\listener.ora
Copyright (c) 1982, 2005, Oracle. All rights reserved.
ERROR:
ORA-12514: TNS: 监听程序当前无法识别连接描述符中请求的服务
8、查看listenser状态:
写入D:\oracle\product\10.2.0\db_1\network\log\listener.log的日志信息

“ora-12541:TNS:无监听程序”问题的解决

“ora-12541:TNS:无监听程序”问题的解决

“ora-12541:TNS:无监听程序”问题的解决ora-12541:TNS:无监听程序,出现这种错误的时候,可以尝试以下步骤的解决方法:1. 在控制面板中查看相关的oracle服务是否已是启动状态;2. 启动sql/plus,看是否能顺利操作;3. 在安装目录下找到tnsnames.ora文件,修改localhost值为本机的IP地址,如下所示:这个文件存在于下面的路径中:“盘名:\oracle\product\10.2.0\db_1\NETWORK\ADMIN\tnsnames.ora”,用记事本打开后进行如下修改:(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))替换为(ADDRESS = (PROTOCOL = TCP)(HOST = *.*.*.*)(PORT = 1521));4. 这个时候如果还是出现上述错误的话,可以尝试重新配置一下监听名称,具体步骤如下:第一步:打开命令行,在弹出的界面中输入dos命令“netca”,在弹出的窗口中进行监听程序配置;第二步:单击下一步,选择重新配置,接下来不用做任何修改,只需直接点击下一步即可完成监听的修改。

通过上面4步的操作,通常问题就会解决啦!这个时候,别的同事就可以通过你数据库的实例名、用户名和密码对你进行访问了。

(PS:怎么验证自己本地的监听没有问题了呢?只需在dos窗口中输入“tnsping 实例名”回车即可)网上的说法是.dbf-数据文件, .tmp-临时文件, .log-重作日志文件(redo log file), .ctl-控制文件 .ora-参数文件, .dat-Oracle系统文件.bat文件是批处理文件,在MS-DOS中,.bat文件是可执行文件,有一系列命令构成,其中可以包含对其他程序的调用。

Oracle11g无监听程序解决办法

Oracle11g无监听程序解决办法

一、监听器(LISTENER)监听器是Oracle基于服务器端的一种网络服务,主要用于监听客户端向数据库服务器端提出的连接请求。

既然是基于服务器端的服务,那么它也只存在于数据库服务器端,进行监听器的设置也是在数据库服务器端完成的。

二、本地服务名(Tnsname)Oracle客户端与服务器端的连接是通过客户端发出连接请求,由服务器端监听器对客户端连接请求进行合法检查,如果连接请求有效,则进行连接,否则拒绝该连接。

本地服务名是Oracle客户端网络配置的一种,另外还有Oracle名字服务器(Oracle Names Server)等。

Oracle 常用的客户端配置就是采用的本地服务名,本文中介绍的也主要是基于本地服务名的配置。

三、Oracle网络连接配置方法配置Oracle服务器端与客户端都可以在其自带的图形化Oracle网络管理器(Oracle Net Manager)里完成(强烈建议在这个图形化的工具下完成Oracle服务端或客户端的配置)。

在Windows下,点击“开始/程序/Oracle - OraHome92/Configuration and Migration Tools/Net Manager”启动Oracle网络管理器工具,在Linux/Unix下,利用netmgr命令来启动图形化Oracle网络管理器,如:$ netmgrWindows下启动Net Manager图形窗口如下图示:1、Oracle监听器配置(LISTENER)如图(一)示,选中树形目录中监听程序项,再点击左上侧“+”按钮添加监听程序,点击监听程序目录,默认新加的监听器名称是LISTENER(该名称也可以由任意合法字符命名)。

选中该名称,选中窗口右侧栏下拉选项中的“监听位置”,点击添加地址按钮。

在出现的网络地址栏的协议下拉选项中选中“TCP/IP”,主机文本框中输入主机名称或IP地址(如果主机即用作服务端也作为客户端,输入两项之一均有效;如果主机作为服务端并需要通过网络连接,建议输入IP地址),端口文本框中输入数字端口,默认是1521,也可以自定义任意有效数字端口。

oracle解决“OORA-12541 TNS 没有监听器”问题的实验

oracle解决“OORA-12541 TNS 没有监听器”问题的实验

20、解决“ORA-12541 TNS no listener”问题的实验
问题描述:在客户端连接数据库时,经常会出现“ORA-12541:TNS:no listener”错误信息,这是什么原因造成的呢?
问题分析:这类错误往往与Oracle监听器有关,需要从目标服务器的监听器启动或配置入手,或者是网络的问题。

1、检查监听器是否已启动,没有启动就启动一下。

可以使用lsnrctl>status <listener_name>
检查监听器的状态。

2、检查监听器已经启动并监听指定的地址,查看监听器文件listener.ora文件。

如果改变
了监听器文件或者通过NETCA改变了监听器的配置,一定要重启监听器:lsnrctl>reload 一般要静态注册一下数据库服务,如:
(SID_DESC=
(GLOBAL_DBNAME= orcl)
(ORACLE_HOME=c:\oracle\product\10.2.0\db_1)
(SID_NAME=orcl)
)
3、保证网络连接畅通
如果监听器已经启动,而且配置正确,但问题一直存在,此时要检查网络连接是否正常,协议是否正确。

一般来说主机要使用明确的IP地址,尽量不要使用计算机名,因为网络中往往有重名或者解析时容易出错。

如果ping没问题,再用tnsping来测试Oracle数据库前端与数据库之间的连接是否畅通。

如果是本机连接,可以使用ipconfig查看,如果不能正确显示,说明网络有问题,,可以将listener.ora中的HOST=主机名改为HOST=127.0.0.1。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
服务 "PLSExtProc" 包含 1 个例程。
例程 "PLSExtProc", 状态 UNKNOWN, 包含此服务的 1 个处理程序...
命令执行成功
启动已经成功,
5.再tnsnames.ora上添加上
ORCL_127.0.0.1 =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))
# Generated by Oracle configuration tools.
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = D:\oracle\product\10.2.0\db_1)
LSNRCTL for 32-bit Windows: Version 10.2.0.1.0 - Production on 20-9月 -2008 11:1
1:09
Copyright (c) 1991, 2005, Oracle. All rights reserved.
正在连接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1)))
32-bit Windows Error: 49: Unknown error
不再监听: (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROC1ipc)))
2、查看Oracle的listener是否启动
C:\Documents and Settings\mengzhaoliang>lsnrctl status
TNS-12535: TNS: 操作超时
TNS-12560: TNS: 协议适配器错误
TNS-00505: 操作超时
32-bit Windows Error: 60: Unknown error
原来没有启动listener,用“lsnrctl start”命令也不能启动。
C:\Documents and Settings\mengzhaoliang>lsnrctl start
LSNRCTL for 32-bit Windows: 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)))
SNMP OFF
监听程序参数文件 D:\oracle\product\10.2.0\db_1\network\admin\listener.o
ra
监听程序日志文件 D:\oracle\product\10.2.0\db_1\network\log\listener.log
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)))
4:40
Copyright (c) 1991, 2005, Oracle. All rights reserved.
启动tnslsnr: 请稍候...
TNSLSNR for 32-bit Windows: Version 10.2.0.1.0 - Production
系统参数文件为D:\oracle\product\10.2.0\db_1\network\admin\listener.ora
监听: (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROC1ipc)))
监听该对象时出错: (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=0.5.0.5)(PORT=1521))
)
TNS-12545: 因目标主机或对象不存在, 连接失败
Copyright (c) 1991, 2005, Oracle. All rights reserved.
系统参数文件为D:\oracle\product\10.2.0\db_1\network\admin\listener.ora
写入D:\oracle\product\10.2.0\db_1\network\log\listener.log的日志信息
TNS-12560: TNS: 协议适配器错误
TNS-00515: 因目标主机或对象不存在, 连接失败
32-bit Windows Error: 49: Unknown error
监听程序未能启动。请参阅上面的错误消息...
3、查看listener.ora的内容:
# listener.ora Network Configuration File: D:\oracle\product\10.2.0\db_1\network\admin\listener.ora
写入D:\oracle\product\10.2.0\db_1\network\log\listener.log的日志信息
监听: (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROC1ipc)))
监听: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=127.0.0.1)(PORT=1521)))
监听端点概要...
(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROC1ipc)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=127.0.0.1)(PORT=1521)))
服务摘要..
写入D:\oracle\product\10.2.0\db_1\network\trace\listener.trc的跟踪信息
跟踪级别当前为0
以 pid=1704 开始
监听: (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROC1ipc)))
)
)
原来本机的ip发生改变后,就出现了上述问题,改变数据库的监听ip地址:
把(ADDRESS = (PROTOCOL = TCP)(HOST = 0.5.0.5)(PORT = 1521))
改成
(ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))
LSNRCTL for 32-bit Windows: Version 10.2.0.1.0 - Production on 20-9月 -2008 10:5
2:16
Copyright (c) 1991, 2005, Oracle. All rights reserved.
启动tnslsnr: 请稍候...
(PROTOCOL=tcp)(HOST=127.0.0.1)(PORT=1267)) * establish * orcl * 12514
TNS-12514: TNS: 监听程序当前无法识别连接描述符中请求的服务
查看listener:
C:\Documents and Settings\mengzhaoliang>lsnrctl services
TNSLSNR for 32-bit Windows: Version 10.2.0.1.0 - Production
系统参数文件为D:\oracle\product\10.2.0\db_1\network\admin\listener.ora
写入D:\oracle\product\10.2.0\db_1\network\log\listener.log的日志信息
ction
启动日期 20-9月 -2008 10:54:41
正常运行时间 0 天 0 小时 0 分 1 秒
跟踪级别 off
安全性 ON: Local OS Authentication
监听该对象时出错: (DESCRIPTION=(ADDRESS=(TOCOL=TCP)(HOST=0.5.0.5)(PORT=1521)))
TNS-12545: 因目标主机或对象不存在, 连接失败
TNS-12560: TNS: 协议适配器错误
TNS-00515: 因目标主机或对象不存在, 连接失败
在用PL/SQL Developer连接数据库时出现
“ORA-12541:TNS:无监听程序”错误。
1、检查listener.log日志
发现下面错误:
TNSLSNR for 32-bit Windows: Version 10.2.0.1.0 - Production on 20-9月 -2008 10:25:26
正在连接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1)))
相关文档
最新文档