- 浏览: 275902 次
- 性别:
- 来自: 成都
文章分类
最新评论
-
yh008:
不错的工具类。 版面需要调整下,有些内容看不到了,只能复制粘贴 ...
Spring 优秀工具类盘点,第 1 部分: 文件资源操作二 -
手心的水滴:
function Foo() { (function( ...
js 两个小括号 ()() 的用法 -
showthesunli:
博主说了这么多,我来说说我的想法,不晓得对不对总结一下,如下代 ...
js 两个小括号 ()() 的用法 -
aqbzwxd:
就是这种盲目无原理依据的研究测试弄晕了我, 有必要这么做吗? ...
js 两个小括号 ()() 的用法 -
wst0350:
多谢
oracle 触发器
在用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
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的日志信息
写入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 status
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)))
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”命令也不能启动。
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
2:16
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
写入D:\oracle\product\10.2.0\db_1\network\log\listener.log的日志信息
监听: (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
监听程序未能启动。请参阅上面的错误消息...
3、查看listener.ora的内容:
# listener.ora Network Configuration File: D:\oracle\product\10.2.0\db_1\network\admin\listener.ora
# 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)
(PROGRAM = extproc)
)
)
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
(ADDRESS = (PROTOCOL = TCP)(HOST = 0.5.0.5)(PORT = 1521))
)
)
原来本机的ip发生改变后,就出现了上述问题,改变数据库的监听ip地址:
把(ADDRESS = (PROTOCOL = TCP)(HOST = 0.5.0.5)(PORT = 1521))
改成
(ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))
127.0.0.1:也就是目前数据库正在用的ip地址。
4、再次启动oracle的listener
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
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
写入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)(KEY=EXTPROC1)))
LISTENER 的 STATUS
------------------------
别名 LISTENER
版本 TNSLSNR for 32-bit Windows: Version 10.2.0.1.0 - Produ
ction
启动日期 20-9月 -2008 10:54:41
正常运行时间 0 天 0 小时 0 分 1 秒
跟踪级别 off
安全性 ON: Local OS Authentication
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
监听端点概要...
(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROC1ipc)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=127.0.0.1)(PORT=1521)))
服务摘要..
服务 "PLSExtProc" 包含 1 个例程。
例程 "PLSExtProc", 状态 UNKNOWN, 包含此服务的 1 个处理程序...
命令执行成功
启动已经成功,
5.再tnsnames.ora上添加上
ORCL_127.0.0.1 =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orcl)
)
)
6、再次用PL/SQL Developer再次连接数据库
出现下面错误:
TNS-12514: TNS: 监听程序当前无法识别连接描述符中请求的服务
再次检查listener.log日志
20-9月 -2008 11:01:54 * (CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=orcl)(CID=
(PROGRAM=D:\plsql\plsqldev.exe)(HOST=RUIFEI-EF0ADC98)(USER=mengzhaoliang))) * (ADDRESS=
(PROTOCOL=tcp)(HOST=127.0.0.1)(PORT=1267)) * establish * orcl * 12514
TNS-12514: TNS: 监听程序当前无法识别连接描述符中请求的服务
查看listener:
C:\Documents and Settings\mengzhaoliang>lsnrctl services
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)))
服务摘要..
服务 "PLSExtProc" 包含 1 个例程。
例程 "PLSExtProc", 状态 UNKNOWN, 包含此服务的 1 个处理程序...
处理程序:
"DEDICATED" 已建立:0 已被拒绝:0
LOCAL SERVER
命令执行成功
7、用sqlplus也出现同样错误:
C:\Documents and Settings\mengzhaoliang>sqlplusscott/mzl@ORCL_127.0.0.1
SQL*Plus: Release 10.2.0.1.0 - Production on 星期六 9月 20 11:15:09 2008
Copyright (c) 1982, 2005, Oracle. All rights reserved.
ERROR:
ORA-12514: TNS: 监听程序当前无法识别连接描述符中请求的服务
8、查看listenser状态:
C:\Documents and Settings\mengzhaoliang>lsnrctl status
LSNRCTL for 32-bit Windows: Version 10.2.0.1.0 - Production on 20-9月 -2008 11:2
6:42
Copyright (c) 1991, 2005, Oracle. All rights reserved.
正在连接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1)))
LISTENER 的 STATUS
------------------------
别名 LISTENER
版本 TNSLSNR for 32-bit Windows: Version 10.2.0.1.0 - Produ
ction
启动日期 20-9月 -2008 11:24:33
正常运行时间 0 天 0 小时 2 分 8 秒
跟踪级别 off
安全性 ON: Local OS Authentication
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
监听端点概要...
(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROC1ipc)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=127.0.0.1)(PORT=1521)))
服务摘要..
服务 "PLSExtProc" 包含 1 个例程。
例程 "PLSExtProc", 状态 UNKNOWN, 包含此服务的 1 个处理程序...
命令执行成功
C:\Documents and Settings\mengzhaoliang>tnsping orcl
TNS Ping Utility for 32-bit Windows: Version 10.2.0.1.0 - Production on 20-9月 -
2008 11:27:43
Copyright (c) 1997, 2005, Oracle. All rights reserved.
已使用的参数文件:
D:\oracle\product\10.2.0\db_1\network\admin\sqlnet.ora
TNS-03505: 无法解析名称
9、查看sqlnet.ora内容:
# sqlnet.ora Network Configuration File: D:\oracle\product\10.2.0\db_1\network\admin\sqlnet.ora
# Generated by Oracle configuration tools.
# This file is actually generated by netca. But if customers choose to
# install "Software Only", this file wont exist and without the native
# authentication, they will not be able to connect to the database on NT.
SQLNET.AUTHENTICATION_SERVICES= (NTS)
NAMES.DIRECTORY_PATH= (TNSNAMES, EZCONNECT)
10.把listener.ora的内容:
# listener.ora Network Configuration File: D:\oracle\product\10.2.0\db_1\network\admin\listener.ora
# 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)
(PROGRAM = extproc)
)
)
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
(ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))
)
)
改成下面的内容:
# listener.ora Network Configuration File: D:\oracle\product\10.2.0\db_1\network\admin\listener.ora
# Generated by Oracle configuration tools.
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = orcl)
(ORACLE_HOME = D:\oracle\product\10.2.0\db_1)
# (PROGRAM = extproc)
)
)
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = orcl))
(ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))
)
)
11、然后关闭、再启动listener
在cmd中执行“lsnrctl stop” 和“lsnrctl stop”命令,再次登陆正常!
C:\Documents and Settings\mengzhaoliang>sqlplusscott/mzl@orcl
SQL*Plus: Release 10.2.0.1.0 - Production on 星期六 9月 20 11:55:47 2008
Copyright (c) 1982, 2005, Oracle. All rights reserved.
连接到:
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options
SQL>
再次用PL/SQL Peveloper登陆就没有问题了。
完毕!
我通过以上步骤我的问题还没解决,然后重启了一下OracleOraDb10g_home1TNSListener服务就行了
发表评论
-
oracle 异常处理
2010-06-02 19:01 18531、异常的优点 如果没有异常,在程序中,应当检查每个 ... -
oracle 行触发与语句触发
2010-05-25 12:49 1067oracle 行触发与语句触发的区别 1、行触发器有 f ... -
oracle 系统表
2010-05-21 12:28 821数据字典dict总是属于Oracle用户sys的。 1、 ... -
EXECUTE IMMEDIATE 执行sql语句
2010-05-21 10:54 3278在ORACLE的PL/SQL里:EXECUTE IMMEDIA ... -
Oracle正则表达式
2010-05-20 16:26 1337oracle的正则表达式(regular expression ... -
oracle 数组
2010-05-20 16:18 1102--固定数组 declare type type_ar ... -
Oracle 存储过程传入二维数组
2010-05-20 15:58 3662Oracle 存储过程传入二维数组 使用Ora ... -
存储过程操作同义词
2010-05-18 11:39 1513A用户ab01 表,B用户通过同义词访问A用户的ab01表 ... -
用Bulk Collect提高查询效率
2010-05-05 16:38 1233Oracle8i中首次引入了Bulk Collect特性, ... -
oracle 统计分组语句
2010-04-22 17:32 2170在应用系统开发中,进行需要统计数据库中的数据,当执行数据统计时 ... -
oracle 控制语句
2010-04-22 17:29 1274一、条件分支语句 条件分支语句用于依据特定的情况选择要执行的操 ... -
oracle 存储过程语法
2010-04-22 17:26 3281子程序是指被命名的PL/SQL块,这些块可以带有参数,可以在不 ... -
oracle 函数
2010-04-22 17:23 1435一、开发函数 函数用于返回特定数据,如果在应用程序中经常需要返 ... -
oracle 触发器
2010-04-22 17:19 4386触发器是指存放在数据库中,并被隐藏执行的存储过程。在Orac ... -
oracle 复合数据类型(pl/sql记录)
2010-04-22 17:16 2041为了简化单行多列数据的处理,可以使用PL/SQL记录;为了保留 ... -
oracle 复合数据类型(批量绑定)2
2010-04-22 17:12 1623一、PL/SQL集合 为了处理单列多行,可以使用PL/ ... -
oracle 复合数据类型(批量绑定)
2010-04-22 17:07 1279批量绑定是oracle9i新增加特性,是指执行单次SQL操作能 ... -
oracle 显示游标
2010-04-22 16:57 1427在oracle9i之前,为了查询处理select语句返回的多行 ... -
Oracle SQL语句(连接查询)
2010-04-22 16:02 3393一、内连接和外连接 内连接用于返回满足连接条件的记录;而 ... -
关于dbms_sql的使用
2010-03-29 16:31 891关于dbms_sql的使用 PL/SQL ...
相关推荐
在使用PL/SQL Developer或其他客户端工具尝试连接Oracle数据库时,可能会遇到`ORA-12541:TNS:无监听程序`的错误。这个错误意味着客户端无法与Oracle数据库服务器建立连接,因为监听程序(Listener)没有运行。监听...
"ORA-12541TNS无监听程序解决" Oracle 是一种关系型数据库管理系统,广泛应用于各行各业。然而,在安装 Oracle 后,连接数据库时可能会出现 ORA-12541:TNS:无监听程序的错误。本文将详细介绍该错误的解决方案。 ...
### Oracle12cRAC数据库出现ora-12520, ora-12516问题解析 #### 一、问题概述 在使用Oracle12cRAC(Real Application Clusters)数据库的过程中,可能会遇到客户端连接时出现ora-12520或ora-12516错误的问题。这两...
在使用Oracle数据库进行数据导入导出操作时,常常会遇到ORA-12154错误,即TNS:无法解析指定的连接标识符。这个问题主要由两个原因造成:一是Oracle服务器未安装正确,二是TNS配置文件未正确设置。以下是针对这两种...
ORA-12541错误,提示为"TNS:无监听程序",表示数据库的监听服务没有运行或者配置错误。解决该问题的常见步骤包括: 1. 重启Oracle服务:首先尝试重启数据库的Oracle服务,包括监听器服务和数据库服务。 2. 监听...
其中,`<your_host>`应替换为数据库服务器的实际IP地址或主机名,`<your_port>`为监听端口,默认情况下通常是`1521`,`<your_service_name>`应替换为你想要连接的数据库服务名。 ### 步骤三:设置环境变量 确保已...
解决这个错误的方法包括查看当前监听的状态、在 oracle 安装目录下查找 listener.ora 和 tnsnames.ora 文件、将 host 改为机器名、重启监听等。 六、主机名和 IP 配置文件 在 Linux 系统中,/etc/hosts 文件是配置...
这些异常包括但不限于`ORA-12651:TNS:没有监听器`、`ORA-12545:因目标主机和对象不存在,连接失败`、`ORA-12560:TNS:协议适配器错误`、`ORA-01034:ORACLE not available`、`ORA-27101:shared memory realm does not ...
可能需要查看的文件“ORA-12154-TNS-could-not-resolve-the-connect-identi.pdf”可能包含更详细的错误分析和解决步骤,例如Oracle官方文档、技术论坛的讨论或专家的经验分享。 总的来说,解决"ORA-12154"错误需要...
oci.dll是Oracle Call Interface(Oracle调用接口)的动态链接库文件,它是Oracle数据库与应用程序交互的核心组件。在描述中提到的问题,用户在使用Navicat Premium这款强大的数据库管理工具尝试连接Oracle数据库时...
Oracle数据库在运行过程中,有时会出现“ORA-12154: TNS: 无法解析指定的连接标识符”的错误,这通常是由于客户端未能正确配置网络服务名导致的。Oracle数据库不同于其他数据库系统,它不直接通过IP地址进行连接,...
在Oracle数据库系统中,用户有时会遇到“ORA-12560:TNS:protocol adapter error”这一类错误提示,通常这类错误提示与网络连接问题相关联。根据提供的部分描述来看,这个问题发生在Windows平台上,并且涉及到Oracle ...
### ORA-12560 错误解决方法 #### 概述 ORA-12560 是一个常见的 Oracle 数据库错误代码,通常在尝试连接到 Oracle 实例时出现。该错误提示可能出现在使用 Oracle 的不同版本(如 Oracle Enterprise Edition 8.1.7...
Oracle数据库-TNS连接是Oracle数据库系统中用于网络通信的关键组件,它允许客户端应用程序与服务器端的数据库进行交互。TNS,全称为Transparent Network Substrate,透明网络子结构,是Oracle数据库提供的一种网络...
- **ORA-12541 TNS:没有监听程序**:通常意味着监听程序没有启动或监听的地址不正确,应检查监听程序状态和配置。 #### 3. 多种命名方法的使用 为了提高灵活性和可用性,可以在系统中同时配置多种命名方法。例如,...
- **故障现象**: 连接数据库时报错`ORA-12541: TNS: no listener`。 - **原因分析**: 可能是客户端`tnsnames.ora`配置文件中的监听端口号设置不正确,或是数据库服务器的监听服务未启动。 - **解决方法**: 1. ...
其中,`server_host`是数据库服务器的IP地址或域名,`server_port`是监听的端口号,`service_name`是数据库的服务名。 4. **资源调整**:如果是因为系统资源限制,可能需要增加操作系统允许的共享内存大小或者清理...
配置监听器的位置信息,包括协议、主机名或IP地址、端口号等。 - **数据库服务配置**:在监听器配置界面中,添加数据库服务。输入全局数据库名(通常包含域名以确保唯一性)和服务ID(SID)。 - **本地服务名配置*...