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

合集下载

解决Oracle无监听错误

解决Oracle无监听错误
服务 "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是否启动

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

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

解决方法一:一:打开cmd,输入sqlplus system/***** (注****表示密码) 能连接Oracle数据库;但输入sqlplus system/******@orcl11g 点回车则显示监听程序当前无法识别连接描述中请求的服务;二:使用SQL/PLUS工具连接也是显示一样的结果监听程序当前无法识别连接描述中请求的服务;三:解决方法:i): 打开这个文件D:\oracle_11g\product\11.2.0\dbhome_1\NETWORK\ADMIN\listener.ora;ii):找到这样段语句[plain]view plaincopy(SID_DESC =(SID_NAME = CLRExtProc)(ORACLE_HOME = D:\oracle_11g\product\11.2.0\dbhome_1)(PROGRAM = extproc)(ENVS = "EXTPROC_DLLS=ONL Y:D:\oracle_11g\product\11.2.0\dbhome_1\bin\oraclr11.dll"))然后在这后面添加这样语句:[plain]view plaincopy(SID_DESC =(GLOBAL_DBNAME = orcl11g)(ORACLE_HOME = D:\oracle_11g\product\11.2.0\dbhome_1)(SID_NAME = orcl11g))最后显示如下:iii)自己按照IP或者数据库实例名修改后保存,再重启数据库监听服务;运行sqlplussystem/******@orcl11g 连接成功;解决方法二:若以上办法不能解决问题,则需要分别修改listener.ora与tnsnames.ora两个文件,将监听地址HOST改成计算机名(计算机-属性-高级系统设置-计算机名),listener.ora有一处地方需修改,tnsnames.ora有两处地方需修改,修改完成后最后重启数据库服务(包括监听服务与数据库服务);。

ORA-12514:TNS:监听程序当前无法识别连接描述符中请求的服务_监听程序不支持服务

ORA-12514:TNS:监听程序当前无法识别连接描述符中请求的服务_监听程序不支持服务

ORA-12514:TNS:监听程序当前⽆法识别连接描述符中请求的服务_监听程序不⽀持服务今天⼤黄蜂同学重启虚拟机之后再链接数据库就报了这个错,先查看了⼀下监听的状态C:> lsnrctl status... ...服务摘要..服务 "CLRExtProc" 包含 1 个实例。

实例 "CLRExtProc", 状态 UNKNOWN, 包含此服务的 1 个处理程序...命令执⾏成功监听中的服务并没有数据库实例orcl,检查了⼀下listener.ora⽂件,配置并没有问题,怀疑是数据库启动时出了问题,导致监听并没有找到数据库服务,为了连上数据库,在listener.ora⽂件中强制添加orcl的监听SID_LIST_LISTENER =(SID_LIST =(SID_DESC =(SID_NAME = CLRExtProc)(ORACLE_HOME = D:\app\Administrator\product\11.2.0\dbhome_1)(PROGRAM = extproc)(ENVS = "EXTPROC_DLLS=ONLY:D:\app\Administrator\product\11.2.0\dbhome_1\bin\oraclr11.dll"))# 以下是添加部分(SID_DESC =(GLOBAL_DBNAME = ORCL)(ORACLE_HOME = D:\app\Administrator\product\11.2.0\dbhome_1)(SID_NAME = ORCL)))然后重启监听,让监听可以识别orcl服务C:> lsnrctl stop... ...C:> lsnrctl start... ...服务 "ORCL" 包含 1 个实例。

实例 "ORCL", 状态 UNKNOWN, 包含此服务的 1 个处理程序...命令执⾏成功然后连接Oracle数据库,尝试重启数据库C:> sqlplus sys/sys@127.0.0.1/orcl as sysdba... ...SQL> shutdown immediate;ORA-01034 - Oracle not availableORA-27101 - shared memory realm does not exist⽹上⼤部分说是ORACL_HOME或ORACLE_SID问题,可惜并不适⽤,后找到⼀篇说查看⽇志,⽇志路径位于ORACLE_HOME\database\ORADIM.LOG,⽇志中找到数据库启动时的报错信息如下:Tue Jun 21 15:10:17 2016D:\app\Administrator\product\11.2.0\dbhome_1\bin\oradim.exe -startup -sid orcl -usrpwd * -log oradim.log -nocheck 0Tue Jun 21 15:10:33 2016ORA-00847: MEMORY_TARGET/MEMORY_MAX_TARGET and LOCK_SGA cannot be set together继续查询报错信息ORA-00847,看起来是数据库系统参数设置的问题,先把pfile导出看⼀下SQL> create pfile from spfile;创建了之后宝宝傻眼了,不在ORACLE_HOME/dbs⾥啊!后来经查才知原来Windows下pfile的默认⽣成路径和linux下不⼀样,位于$ORACLE_BASE\admin\db_name\pfile然后打开pfile注释掉MEMORY_TARGET参数的设置...# memory_target=898629632...然后从pfile启动数据库,根据pfile⽣成spfileSQL> startup pfile='D:\app\Administrator\admin\orcl\pfile\init.ora.115201614250';SQL> create spfile from pfile='D:\app\Administrator\admin\orcl\pfile\init.ora.115201614250';然后便可以重启数据库了,最后将listener.ora还原,重启服务器,再查看监听状态就可以看到orcl服务正常了C:> lsnrctl status... ...服务摘要..服务 "CLRExtProc" 包含 1 个实例。

处理Oracle监听程序当前无法识别连接描述符中请求的服务异常(ORA-12514)

处理Oracle监听程序当前无法识别连接描述符中请求的服务异常(ORA-12514)

处理Oracle监听程序当前⽆法识别连接描述符中请求的服务异常(ORA-12514)最近⼏天刚学习oracle11g,安装完成之后直接使⽤,今天⽤PLSQL链接突然报错,报错代码为:ORA-12514:监听程序当前⽆法识别连接描述符中请求的服务。

⽹上查了这种异常的解决办法,特在此记录。

出现该问题⼀般有两种情况。

第⼀种是在你安装完之后未配置监听(在此我暂时忘记安装完之后有没有配置监听);第⼆种是之前配置了监听但是系统未写⼊到listener.ora⽂件中(在此我暂未搞明⽩什么时候写⼊),所以只需要在该⽂件中写⼊配置参数就可以了。

解决办法:1、打开listener.ora⽂件找到listener.ora⽂件的存放位置并打开。

我本机⽂件⽬录在D:\app\iLife1988\product\11.2.0\dbhome_1\NETWORK/ADMIN下。

该⽂件须根据⾃⼰安装⽬录的实际情况找。

(注:Oracle10g与11g的⽬录好像不太⼀样)。

⽂件内容如下图:从上图中我们可以看出我已经配置过监听了,但是报错是由于Oracle的地址没有写到SID_DESC中,在此我们将此写⼊就可以了。

2、修改listener.ora⽂件将以下内容追加到该⽂件的SID_LIST节点下(SID_DESC =(GLOBAL_DBNAME = orcl)(ORACLE_HOME = D:\app\iLife1988\product\11.2.0\dbhome_1)(SID_NAME = orcl))注:标红的部分根据⾃⼰机器安装⽬录修改3、我在此本机修改完毕后,总是提⽰我不能保存,提⽰说该⽂件已在别的地⽅打开。

于是我另存⼀份,然后直接将原来的⽂件给覆盖掉。

修改完成之后如下图所⽰:4、重启监听服务。

OK搞定!!以上就是本⽂的全部内容,希望对⼤家的学习有所帮助,也希望⼤家多多⽀持。

ORA-12505:TNS:监听程序当前无法识别连接描述符中所给出的SID等错误解决方法

ORA-12505:TNS:监听程序当前无法识别连接描述符中所给出的SID等错误解决方法

ORA-12505:TNS:监听程序当前⽆法识别连接描述符中所给出的SID等错误解决⽅法程序连接orarle报ORA-12505错误⼀、异常{ORA-12505, TNS:listener does not currently know of SID given in connect descriptorThe Connection descriptor used by the client was:10.190.121.95:1521:sxzhdb}⼆、查询{ORA-12505:TNS: 监听程序当前⽆法识别连接描述符中所给出的 SIDSID:是⼀个数据库的唯⼀标识符!是建⽴⼀个数据库时系统⾃动赋予的⼀个初始ID,SID主要⽤于在⼀些DBA操作以及与操作系统交互,从操作系统的⾓度访问实例名,必须通过ORACLE_SID,且它在注册表中也是存在的.ORACLE_SID就是Oracle System Identifier.在Oracle系统中,ORACLE_SID以环境变量的形式出现,当Oracle实例启动时,操作系统上fork 的进程必须通过这个SID将实例与其他实例区分开来,这就是SID的作⽤。

}三、修改{将原来的:jdbc:oracle:thin:@10.190.121.95:1521:sxzhdb改为:jdbc:oracle:thin:@(DESCRIPTION =(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=10.190.121.95)(PORT=1521)) (LOAD_BALANCE=yes))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=sxzhdb)))后,程序连接数据库OK。

------最后将:url简化为:jdbc:oracle:thin:@(description=(address=(protocol=tcp)(port=1521)(host=10.190.121.95))(connect_data= (service_name=sxzhdb)))----其中address的三个属性protocol,port,host顺序可以变化,⼤⼩写均可以。

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数据库监听配置与报错解决方法作者:范美卉张俊萌来源:《电脑知识与技术》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]。

Oracle11g监听程序当前无法识别连接描述符中请求的服务(共5篇)

Oracle11g监听程序当前无法识别连接描述符中请求的服务(共5篇)

Oracle11g监听程序当前无法识别连接描述符中请求的服务(共5篇)第一篇:Oracle11g监听程序当前无法识别连接描述符中请求的服务解决方法一:一:打开cmd,输入sqlplus system/*****(注****表示密码)能连接Oracle数据库;但输入 sqlplus system/******@orcl11g 点回车则显示监听程序当前无法识别连接描述中请求的服务;二:使用SQL/PLUS工具连接也是显示一样的结果监听程序当前无法识别连接描述中请求的服务;三:解决方法:i): 打开这个文件D:oracle_11gproduct11.2.0dbhome_1NETWORKADMINlistener.o ra;ii):找到这样段语句 [plain]view plaincopy(SID_DESC =(SID_NAME = CLRExtProc)(ORACLE_HOME = D:oracle_11gproduct11.2.0dbhome_1)(PROGRAM = extproc)(ENVS = “EXTPROC_DLLS=ONLY:D:oracle_11gproduct11.2.0dbhome_1bi noraclr11.dll”))然后在这后面添加这样语句:[plain]view plaincopy(SID_DESC =(GLOBAL_DBNAME = orcl11g)(ORACLE_HOME = D:oracle_11gproduct11.2.0dbhome_1)(SID_NAME = orcl11g))最后显示如下:iii)自己按照IP或者数据库实例名修改后保存,再重启数据库监听服务;运行 sqlplus system/******@orcl11g 连接成功;解决方法二:若以上办法不能解决问题,则需要分别修改listener.ora与tnsnames.ora两个文件,将监听地址HOST改成计算机名(计算机-属性-高级系统设置-计算机名),listener.ora有一处地方需修改,tnsnames.ora有两处地方需修改,修改完成后最后重启数据库服务(包括监听服务与数据库服务);第二篇:患者身份识别制度和程序患者身份识别制度和程序1、护士在抽血、给药时,必须严格执行三查,至少同时使用二种患者识别的方法(如:姓名、性别、所患疾病),不得仅以床号作为识别的依据。

oracle安装及使用常见问题及解决方案

oracle安装及使用常见问题及解决方案

第一部分:1、win7_oracle11g_64位连接32位PLSQL_Developer解决思路:1)下载instantclient-basic-win32-11.2.0.1.0文件并解压。

复制到数据库安装的文件夹下的product文件夹下。

2)然后找到两个文件listener.ora和tnsnames.ora。

在…\product\11.2.0\dbhome_1\NETWORK\ADMIN里面。

都复制到…\product\instantclient_11_2的下面。

注意!!!以后使用的listener.ora和tnsnames.ora文件都是instantclient_11_2路径下的。

3)然后找到PLSQL_Developer安装的目录,在里面新建一个记事本,写入以下类似代码:@echo offset path=E:\app\Administrator\product\instantclient_11_2setORACLE_HOME=E:\app\Administrator\product\instantclient_11_2setTNS_ADMIN=E:\app\Administrator\product\instantclient_11_2set NLS_LANG=AMERICAN_AMERICA.AL32UTF8start plsqldev.exe注意!!!!我的instantclient_11_2地址是:E:\app\Administrator\product\instantclient_11_2而你的跟我的可能不一样,所以要修改成你的instantclient_11_2的路径!写好后,将你的记事本名称改为start.bat然后点击运行。

如果PLSQL Developer没有打开,请仔细检查你上面的步骤和代码是否正确,然后在运行start.bat。

4)打开PLSQL_Developer后,取消登陆,进入主界面。

解决windows7无法连接CentOS7系统中oracle问题:ORA-12514TNS。。。

解决windows7无法连接CentOS7系统中oracle问题:ORA-12514TNS。。。

解决windows7⽆法连接CentOS7系统中oracle问题:ORA-12514TNS。

linux开启后终端按下⾯输⼊(容易忘记,记录下);[oracle@localhost ~]$ lsnrctl stop #先关闭监听服务[oracle@localhost ~]$ lsnrctl start #开启监听服务[oracle@localhost ~]$ sqlplus / as sysdba #登⼊SQL> shutdown immediate #⽴即关闭数据库服务(⼀般是关闭状态)SQL> startup #开启数据库服务(重要,必输)SQL> exit #退出SQL> sqlplus scott/tiger@192.168.78.130/orcl #连接scott⽤户SQL> select * from tab; #test查询表解决问题:ORA-12514 TNS 监听程序当前⽆法识别连接描述符中请求服务环境:CentOS-7 + Oracle 11g 64位相关说明:数据库服务器:Oracle11g64位软件的安装位置为data/oracle/product/11.2.0/db_1,名为默认的orcl,CentOS7虚拟机的IP设置为:192.168.78.130Windows7客户端:1、PLSQL安装位置:C:\Program Files\PLSQL DeveloperInstantClient存放位置:C:\Program Files\PLSQL Developer\instantclient_11_2,并创建⽂件network,创建⽂件夹admin;2.在C:\Program Files\PLSQL Developer\instantclient_11_2\network\admin新建tnsnames.ora,⽤记事本编辑.ORCL =(DESCRIPTION =(ADDRESS = (PROTOCOL = TCP)(HOST = 虚拟机IP)(PORT = 1521))(CONNECT_DATA =(SERVER = DEDICATED)(SERVICE_NAME = orcl)))3.添加⼀个环境变量,名为TNS_ADMIN,值为tnsnames.ora⽂件所在路径C:\Program Files\PLSQL Developer\instantclient_11_2\network\admin,plsql通过这个找到orcl连接字符串4.添加⼀个环境变量NLS_LANG = SIMPLIFIED CHINESE_CHINA.ZHS16GBK5.打开PLSQL,不⽤登陆,⼯具-⾸选项-ORACLE-连接:勾选检查连接Oracle主⽬录: C:\Program Files\PLSQL Developer\instantclient_11_2OCI库:C:\Program Files\PLSQL Developer\instantclient_11_2\network\admin\oci.dll遇到问题:使⽤plsql连接数据库服务器:“ORA-12514 TNS 监听程序当前⽆法识别连接描述符中请求服务”解决办法简述:1.修改\data\oracle\product\11.2.0\db_1\network\admin\listener.ora中的localhost改为192.168.78.1302.修改\data\oracle\product\11.2.0\db_1\network\admin\tnsnames.ora中的localhost 改为 192.168.78.1303.修改后,重启oracle,监听,并注册,主win7上的plsql就可以远程连接虚拟机上的数据库了.具体操作步骤如下:⼀、修改数据库服务器中listener.ora⽂件内容命令:[oracle@localhost admin]$ vi /data/oracle/product/11.2.0/db_1/network/admin/listener.ora原始内容:# lis te ne r.o ra Ne two rk Co nfiguratio n File: /data/o rac le/pro duc t/11.2.0/db_1/ne two rk/admin/lis te ne r.o ra# Ge ne rate d by Orac le c o nfiguratio n to o ls.LIS TENER =(D ES CRIPTION_LIS T =(D ES CRIPTION =(AD D RES S = (PROTOCOL = IPC)(KEY = EXTPROC1521))(AD D RES S = (PROTOCOL = TCP)(HOS T = lo c alho s t)(PORT = 1521))))AD R_BAS E_LIS TENER = /data/o rac le修改为:# listener.ora Network Configuration File: /data/oracle/product/11.2.0/db_1/network/admin/listener.ora# Generated by Oracle configuration tools.SID_LIST_LISTENER =(SID_LIST =(SID_DESC =(GLOBAL_DBNAME = orcl)(ORACLE_HOME = /data/oracle/product/11.2.0/db_1)(SID_NAME = orcl)))LISTENER = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.78.130)(PORT = 1521))) ADR_BASE_LISTENER = /data/oracle⼆、修改数据库服务器中tnsnames.ora⽂件内容命令:[oracle@localhost admin]$ vi /data/oracle/product/11.2.0/db_1/network/admin/tnsnames.ora原始内容:# tnsnam es.ora Network Configuration File: /data/oracle/product/11.2.0/db_1/network/adm in/tnsnam es.ora# Generated by Oracle configuration tools.ORCL =(DESCRIPTION =(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))(CONNECT_DATA =(SERVER = DEDICATED)(SERVICE_NAME = orcl)))修改后的内容:# tnsnam es.ora Network Configuration File: /data/oracle/product/11.2.0/db_1/network/adm in/tnsnam es.ora# Generated by Oracle configuration tools.orcl =(DESCRIPTION =(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.78.130)(PORT = 1521)))(CONNECT_DATA =(SID = orcl)))三、在数据库服务器中启动监听并更新注册1、命令:[oracle@localhost ~]$ lsnrctl stop #先关闭监听服务输出:LSNRCTL for Linux: Version 11.2.0.1.0 - Production on 19-FEB-2017 21:19:42Copyright (c) 1991, 2009, Oracle. All rights reserved.Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.78.130)(PORT=1521))) The com m and com pleted successfully[oracle@localhost ~]$2、命令:[oracle@localhost ~]$ lsnrctl start #开启监听服务输出:LSNRCTL for Linux: Version 11.2.0.1.0 - Production on 19-FEB-2017 21:24:22Copyright (c) 1991, 2009, Oracle. All rights reserved.Starting /data/oracle/product/11.2.0/db_1/bin/tnslsnr: please wait...TNSLSNR for Linux: Version 11.2.0.1.0 - ProductionSystem param eter file is /data/oracle/product/11.2.0/db_1/network/adm in/listener.oraLog m essages written to /data/oracle/diag/tnslsnr/localhost/listener/alert/log.xm lListening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.78.130)(PORT=1521)))Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.78.130)(PORT=1521))) STATUS of the LISTENER------------------------Alias LISTENERVersion TNSLSNR for Linux: Version 11.2.0.1.0 - ProductionStart Date 19-FEB-2017 21:24:22Uptim e 0 days 0 hr. 0 m in. 0 secTrace Level offSecurity ON: Local OS AuthenticationSNMP OFFListener Param eter File /data/oracle/product/11.2.0/db_1/network/adm in/listener.oraListener Log File /data/oracle/diag/tnslsnr/localhost/listener/alert/log.xm lListening Endpoints Sum m ary...(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.78.130)(PORT=1521)))Services Sum m ary...Service "orcl" has 1 instance(s).Instance "orcl", status UNKNOWN, has 1 handler(s) for this service...The com m and com pleted successfully[oracle@localhost ~]$3、命令:[oracle@localhost ~]$ sqlplus / as sysdba #登⼊输出:SQL*Plus: Release 11.2.0.1.0 Production on Sun Feb 19 21:27:40 2017Copyright (c) 1982, 2009, Oracle. All rights reserved.Connected to:Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production With the Partitioning, OLAP, Data Mining and Real Application Testing options SQL>命令:SQL> shutdown immediate #⽴即关闭数据库服务输出:Database closed.Database dism ounted.ORACLE instance shut down.SQL>命令:SQL> startup #开启数据库服务输出:ORACLE instance started.Total System Global Area 1586708480 bytesFixed Size 2213736 bytesVariable Size 939526296 bytesDatabase Buffers 637534208 bytesRedo Buffers 7434240 bytesDatabase m ounted.Database opened.SQL>命令:SQL> alter system register; #注册输出:System altered.SQL>命令:SQL> quit #登出输出:Disconnected from Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit ProductionWith the Partitioning, OLAP, Data Mining and Real Application Testing options[oracle@localhost ~]$命令:[oracle@localhost ~]$ lsnrctl status #查看监听状态输出:LSNRCTL for Linux: Version 11.2.0.1.0 - Production on 19-FEB-2017 21:37:20Copyright (c) 1991, 2009, Oracle. All rights reserved.Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.78.130)(PORT=1521)))STATUS of the LISTENER------------------------Alias LISTENERVersion TNSLSNR for Linux: Version 11.2.0.1.0 - ProductionStart Date 19-FEB-2017 21:24:22Uptim e 0 days 0 hr. 12 m in. 57 secTrace Level offSecurity ON: Local OS AuthenticationSNMP OFFListener Param eter File /data/oracle/product/11.2.0/db_1/network/adm in/listener.oraListener Log File /data/oracle/diag/tnslsnr/localhost/listener/alert/log.xm lListening Endpoints Sum m ary...(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.78.130)(PORT=1521)))Services Sum m ary...Service "orcl" has 1 instance(s).Instance "orcl", status UNKNOWN, has 1 handler(s) for this service...The com m and com pleted successfully[oracle@localhost ~]$四、Windows7客户端下的测试步骤:使⽤plsqldev.exe测试,修改C:\Program Files\PLSQL Developer\instantclient_11_2\network\admin \tnsnames.ora⽂件,新增到虚拟机Oracle的连接内容# tnsnam es.ora Network Configuration File: /data/oracle/product/11.2.0/db_1/network/adm in/tnsnam es.ora # Generated by Oracle configuration tools.CentosOracle =(DESCRIPTION =(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.78.130)(PORT = 1521))(CONNECT_DATA =(SERVER = DEDICATED)(SERVICE_NAME = orcl)))运⾏plsql,使⽤SYS⽤户登录成功(我这⾥使⽤scott⽤户)linux开启后终端按下⾯输⼊;[oracle@localhost ~]$ lsnrctl stop #先关闭监听服务[oracle@localhost ~]$ lsnrctl start #开启监听服务[oracle@localhost ~]$ sqlplus / as sysdba #登⼊SQL> shutdown immediate #⽴即关闭数据库服务(⼀般是关闭状态)SQL> startup #开启数据库服务(重要,必输)SQL> exit #退出SQL> sqlplus scott/tiger@192.168.78.130/orcl #连接scott⽤户SQL> select * from tab; #test查询表。

oracle安装常见问题及解决方案

oracle安装常见问题及解决方案
)
)
原来本机的ip发生改变后,就出现了上述问题,改变数据库的监听ip地址:
把(ADDRESS = (PROTOCOL = TCP)(HOST = 0.5.0.5)(PORT = 1521))
改成
(ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))
在用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)(PIPENAME=\\.\pipe\EXTPROC1ipc)))
解决方案 --> 1 :
ORACLE10G数据库TNS链接不上(TNS无法解释)
我们常遇到由于网络断开或者机器IP变化或其他原因造成oracle数据库TNS链接不上的情况。有的时候甚至重装oracle数据库也没用,我在实践中总结了两点处理的经验:
1、由于IP变化造成的,那么重新配置一下监听就可以了
==》问题2:
创建数据库实例时报:
无法在指定的范围内为以下进程分配端口: JMS [5540-5559],RMI [5520-5539],Database Control [5500-5519],EM Agent [3938> 1:
==》问题3:
(PROGRAM = extproc)

oracle 安装后出现 ORA-12545因目标主机或对象不存在问题

oracle 安装后出现 ORA-12545因目标主机或对象不存在问题

oracle 安装后出现 ORA-12545:
因目标主机或对象不存在
一、用客户端登录时的提示
二、在网上搜索提示说tnsnames.ora 和listener.ora配置有问题,
按照提示查看果然是配错了,如下图
三、将配置修改后客户端可以登录,但是在dos窗口内
exp BS/BS@orcl_192.167.29.93 file=d:\BS.dmp log=d:\BS.log
exp OBEBS/OBEBS@orcl_192.167.29.93 file=d:\OBEBS.dmp log=d:\OBEBS.log
或者
imp BS/BS@orcl_192.167.29.93 full=y file=d:\BS.dmp log=d:\BS.log imp OBEBS/OBEBS@orcl_192.167.29.93 full=y file=d:\OBEBS.dmp log=d:\OBEBS.log
备份或者导入数据时就会报了“ORA-12514 TNS 监听程序当前无法识别连接描述符中请求服务”错误,仔细检查没有问题,后来发现pl/sql登录界面数据库显示界面是192.167.29.93_orcl,而不是orcl_192.167.29.93,与正常数据库实例是相反的,不明白什么原因,在网上也没有查到具体原因,如下图
将命令中的orcl_192.167.29.93改为192.167.29.93_orcl就可以备份和还原数据库了。

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”命令也不能启动。

Oracle11监听程序问题解决

Oracle11监听程序问题解决

Oracle11监听程序问题
在windows环境下安装oracle11有时候会遇到监听程序相关错误大致分为以下几种类型:
1.无监听程序
2.监听程序当前无法识别连接描述符中请求的服务
3.无法启动监听程序
首先,新建一个本地网络服务名配置来测试这些可能存在的问题。

完成后,对其进行测试。

1.无监听程序ORA-12541
首先确定监听程序是否启动,如果未启动,尝试启动它。

启动后可能会遇到下面两个问题中的一个:
2.监听程序当前无法识别连接描述符中请求的服务ORA-12541
listener.ora和tnsnames.ora这两个文件的内容不一致造成的。

以前在oracle10的时候经常会遇到这个问题。

但是在11以后,手工改这个文件容易改错。

所以,我建议使用Net config Assistant工具来改。

注意:每次修改过这两个文件必须重启oaracle服务和监听服务,并且重启Net config Assistant进行重新测试。

3.无法启动监听程序
listener.ora文件的内容可能被手工修改错了,按照下面步骤来修复:
1)删除现有的所有监听程序。

2)删除listener.ora和tnsnames.ora这两个文件。

3)新建监听服务
4.用户名口令无效ORA-101017
看到这个基本就成功了。

修改一下登陆就行了。

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-12514,TNS:listenerdoesnotcurrentlyknowofs。。。

ORA-12514,TNS:listenerdoesnotcurrentlyknowofs。。。

ORA-12514,TNS:listenerdoesnotcurrentlyknowofs。

今天使⽤SQL Developer连接⼀台测试服务器数据库(ORACLE 11g)时,遇到了“ORA-12514, TNS:listener does not currently know of service requested in connect descriptor”错误,具体提⽰如下所⽰:执⾏请求的操作时遇到错误:Listener refused the connection with the following error:ORA-12514, TNS:listener does not currently know of service requested in connect descriptor供应商代码 12514⼏年前写过⼀篇关于”“的案例⽂章,现在看来当时写的⽐较肤浅和粗糙,当然案例也不⼀样,下⾯在总结⼀下如何处理ORA-12514这个错误吧。

Step 1:⾸先检查客户端的tnsnames.ora⾥⾯的host、port、service_name等是否正确myvm =(DESCRIPTION =(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)(HOST = 10.20.57.15)(PORT = 1521)))(CONNECT_DATA =(SERVER = SHARED)(SERVICE_NAME = gsp.localdomain)))逐⼀仔细检查过后发现这些配置都是正确的。

其实前⼏天还是正常来的。

测试服务器和tnsnames.ora都没有改动过。

所以我们继续后⾯排查。

Step 2:检查确认数据库实例是否启动。

SQL> select status from v$instance;STATUS------------OPENSQL>如上所⽰,数据库实例正常,并没有关闭。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

早上同事用PL/SQL连接虚拟机中的Oracle数据库,发现又报了“ORA-12514 TNS 监听程序当前无法识别连接描述符中请求服务”错误,帮其解决后,发现很多人遇到过这样的问题,因此写着这里。

也许你没有遇到过,原因如下:
你oracle安装成功后,一直未停止数据库(即数据库是启动的),客户端配置成功后,应该一直不会有什么问题。

而一旦你和我同事一样,有时把Oracle安装在虚拟机中,而且Oracle安装完毕后,没在进行任何监听的配置,则虚拟机再启动,则就会出现ORA-12514的问题。

如下图
如下是解决思路:
根据出错信息判断出客户端未监听到实例服务名
1、通过重启服务的方式启动数据库,再次连接仍无法连接服务器。

2、既然第一种方法不能解决问题,那就第二种方法。

考虑监听listener.ora
监听配置文件listener.ora中可以不必指定监听的服务名(安装Oracle10g 后也是没有指定的)。

正常情况下一般只要数据库启动,客户端连接数据库也没有什么问题,但是有时重复启动关闭也会出现ORA-12514错误。

既然listener.ora中没有指定监听,我们可以在listener.ora文件中指定监听的实例名,这样该问题应该可以连接。

步骤如下:
在oracle服务器Oracle安装目录(我的在E:\Oracle10g下,每个人的不一样,根据自己的情况查找)Network/admin目录下找到listener.ora
我的如下图所示
# listener.ora Network Configuration File:
E:\Oracle10g\network\admin\listener.ora
# Generated by Oracle configuration tools.
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = E:\Oracle10g)
(PROGRAM = extproc)
)
(SID_DESC =
(GLOBAL_DBNAME = ORCL)
(ORACLE_HOME = E:\Oracle10g)
(SID_NAME = ORCL)
)
)
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
(ADDRESS = (PROTOCOL = TCP)(HOST = onest)(PORT = 1521))
)
)
标红的为我添加的部分,ORCL为监听的实例名。

然后在Oracle服务器的服务中重新启动监听服务
,然后在oracle客户端通过再次配置对Orcl实例的监听,如下图所示
∙结果出现如下图的提示。

∙这时我们不要着急,只需要oracle服务器重新启动一下,再次连接即成功。

这也是我们配置完listener.ora 监听后,经常忘记的。

再次尝试,
可以看到客户端可以连接上oracle服务器了,而且PL/SQL再次连接也
没有问题了。

而有些朋友在配置客户端时,连接数据库成功,而使用PL/SQL时,又出现了如下图所示的问题。

这又如何解决呢?为什么oracle客户端已经连接成功了,而PL/SQL确不行呢?
出现如上的原因是,可能是大家再配置oracle客户端时,虽然链接成功了,步骤上可能有些错误。

大家使用Net Cofiguration Assistant客户端时重新配置了Orcl,而不是添加,我们应该如下步骤处理,就不会出问题了。

1、如果Net Cofiguration Assistant中已经有了Orcl。

我们可以重新配置
2、如果Net Cofiguration Assistant中没有Orcl,我们应该添加具体界面如下图所示。

如果大家该步处理也没有问题了,listener.ora 修改成功,并且重新启动了oracle服务器,无论oracle客户端还是PL/SQL都能够成功连接数据库了。

总结一下。

当大家遇到“ORA-12514 TNS 监听程序当前无法识别连接描述符中请求服务”错误的解决步骤:
1、通过重启服务的方式启动数据库,再次连接尝试。

2、如果第一种方法不可行,我们采用第二种方法
∙正确添加listener.ora;
∙重新启动了oracle服务器,并检查oracle所有服务是否启动;
∙oracle客户端Net Cofiguration Assistant正确添加或重新配置实例名。

相关文档
最新文档