`
xuela_net
  • 浏览: 503316 次
文章分类
社区版块
存档分类
最新评论

监听独立于数据库服务器的配置,解决ORA-12520及ORA-12545错误

 
阅读更多

一、环境:


1、linux主机ocm(192.168.217.130)作为数据库
sys@OCM> select * from v$version;

BANNER
--------------------------------------------------------------------------------
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production

2、linux主机ocp(192.168.217.133)作为独立远程监听
sys@OCP> select * from v$version;

BANNER
--------------------------------------------------------------------------------
Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production

3、windows主机(192.168.217.2)作为客户端
 windows 7


二、在ocm主机(192.168.217.130)上操作:


1、配tnsnames.ora


LISTENER_OCP =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.217.133)(PORT = 1521))
)


2、配参数
sys@OCM> alter system set remote_listener=LISTENER_OCP;


3、查监听
[oracle@ocm ~]$ lsnrctl status


LSNRCTL for Linux: Version 11.2.0.1.0 - Production on 29-MAY-2013 21:13:28


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


Connecting to (ADDRESS=(PROTOCOL=tcp)(HOST=)(PORT=1521))
STATUS of the LISTENER
------------------------
Alias LISTENER
Version TNSLSNR for Linux: Version 11.2.0.1.0 - Production
Start Date 29-MAY-2013 20:34:42
Uptime 0 days 0 hr. 38 min. 47 sec
Trace Level off
Security ON: Local OS Authentication
SNMP OFF
Listener Parameter File /u01/app/oracle/product/11.2.0/network/admin/listener.ora
Listener Log File /u01/app/oracle/diag/tnslsnr/ocm/listener/alert/log.xml
Listening Endpoints Summary...
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=ocm.example.com)(PORT=1521)))
Services Summary...
Service "ocm" has 1 instance(s).
Instance "ocm", status READY, has 1 handler(s) for this service...
Service "ocmXDB" has 1 instance(s).
Instance "ocm", status READY, has 1 handler(s) for this service...
The command completed successfully



三、在ocp主机(192.168.217.133)上操作:


1、查监听

[oracle@ocp ~]$ lsnrctl status

LSNRCTL for Linux: Version 11.2.0.3.0 - Production on 29-MAY-2013 20:49:22

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

Connecting to (ADDRESS=(PROTOCOL=tcp)(HOST=)(PORT=1521))
STATUS of the LISTENER
------------------------
Alias LISTENER
Version TNSLSNR for Linux: Version 11.2.0.3.0 - Production
Start Date 29-MAY-2013 20:44:12
Uptime 0 days 0 hr. 5 min. 10 sec
Trace Level off
Security ON: Local OS Authentication
SNMP OFF
Listener Parameter File /u01/app/oracle/product/11.2.0/network/admin/listener.ora
Listener Log File /u01/app/oracle/diag/tnslsnr/ocp/listener/alert/log.xml
Listening Endpoints Summary...
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=ocp)(PORT=1521)))
Services Summary...
Service "ocm" has 1 instance(s).
Instance "ocm", status READY, has 1 handler(s) for this service...
Service "ocmXDB" has 1 instance(s).
Instance "ocm", status READY, has 1 handler(s) for this service...
Service "ocp" has 1 instance(s).
Instance "ocp", status READY, has 1 handler(s) for this service...
The command completed successfully

2、配tnsnames.ora
remote_130 =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.217.133)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = ocm)
)
)

3.连接测试
[oracle@ocm admin]$ sqlplus hr/hr@remote_130


SQL*Plus: Release 11.2.0.3.0 Production on Wed May 29 23:07:19 2013


Copyright (c) 1982, 2009, Oracle. All rights reserved.

ERROR:
ORA-12520: TNS:listener could not find available handler for requested type of
server

Enter user-name:

4、解决方法:(192.168.217.133)主机上一定要配一下
vi /etc/hosts
192.168.217.130 ocm
192.168.217.133 ocp



四、从windows客户端连接


remote_130 =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.217.133)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = ocm)
)
)


C:\Users\Administrator>sqlplus hr/hr@remote_130


SQL*Plus: Release 10.2.0.1.0 - Production on 星期三 5月 29 21:02:34 2013


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


ERROR:
ORA-12545: 因目标主机或对象不存在, 连接失败


请输入用户名:


解决方法在C:\Windows\System32\drivers\etc
编辑hosts添加如下:
192.168.217.130 ocm
192.168.217.133 ocp



五、最后总结配置的整过程和解决:
1、配tnsnames.ora


LISTENER_OCP =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.217.133)(PORT = 1521))
)


2、配参数
sys@OCM> alter system set remote_listener=LISTENER_OCP;


3、查服务
[oracle@ocm ~]$ lsnrctl services
LSNRCTL for Linux: Version 11.2.0.1.0 - Production on 29-MAY-2013 23:28:55


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


Connecting to (ADDRESS=(PROTOCOL=tcp)(HOST=)(PORT=1521))
Services Summary...
Service "ocm" has 1 instance(s).
Instance "ocm", status READY, has 1 handler(s) for this service...
Handler(s):
"DEDICATED" established:0 refused:0 state:ready
LOCAL SERVER
Service "ocmXDB" has 1 instance(s).
Instance "ocm", status READY, has 1 handler(s) for this service...
Handler(s):
"D000" established:0 refused:0 current:0 max:972 state:ready
DISPATCHER <machine: ocm, pid: 12608>
(ADDRESS=(PROTOCOL=tcp)(HOST=ocm.example.com)(PORT=46963))
Service "ocp" has 1 instance(s).
Instance "ocp", status READY, has 1 handler(s) for this service...
Handler(s):
"DEDICATED" established:5 refused:0 state:ready
REMOTE SERVER
(ADDRESS=(PROTOCOL=TCP)(HOST=ocp)(PORT=1521))
The command completed successfully


(ADDRESS=(PROTOCOL=TCP)(HOST=ocp)(PORT=1521))从这里发现问题的所在。。。。明白了监听是用主机名,这里必须配/etc/hosts或DNS


4、在windows客户端配tnsnames.ora,或在linux客户端配tnsnames.ora

remote_130 =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.217.133)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = ocm)
)
)


5、连接报错
windows中报错
ERROR:
ORA-12545: 因目标主机或对象不存在, 连接失败


请输入用户名:


linux中报错
ERROR:
ORA-12520: TNS:listener could not find available handler for requested type of
server


Enter user-name:


6、最后解决办法:
(1)windows
C:\Windows\System32\drivers\etc
编辑hosts,添加如下:
192.168.217.130 ocm
192.168.217.133 ocp

(2)linux
vi /etc/hosts
192.168.217.130 ocm
192.168.217.133 ocp

(3)要是还报错,配参数listener_local,嘿嘿,一般是不需要配的,我这里就没有配置,不过配上也没关系。

alter system set local_listener='(ADDRESS = (PROTOCOL=TCP)(HOST=192.168.217.130)(PORT=1521))';


(4)如果以上三步还报错,那可能是bug.我这个版本还没有测出来。。。

操作完毕,有其它的不足的地方,请大家指正,谢谢!


**********本博客所有内容均为原创,如有转载请注明作者和出处!!!**********
Name: guoyJoe

QQ: 252803295

Email: oracledba_cn@hotmail.com

Blog: http://blog.csdn.net/guoyJoe

ITPUB: http://www.itpub.net/space-uid-28460966.html

OCM: http://education.oracle.com/education/otn/YGuo.HTM
_____________________________________________________________
加群验证问题:哪些SGA结构是必需的,哪些是可选的?否则拒绝申请!!!

答案在:http://blog.csdn.net/guoyjoe/article/details/8624392

DSI&Core Search Ⅰ群:127149411(加群验证信息回复:from guoyJoe@csdn)

DSI&Core Search Ⅱ 群:177089463 (加群验证信息回复:from guoyJoe@csdn)

DSI&Core Search Ⅲ群284596437(加群验证信息回复:from guoyJoe@csdn)

DSI&Core Search Ⅳ 群192136702(加群验证信息回复:from guoyJoe@csdn)

DSI&Core Search Ⅴ群:285030382(加群验证信息回复:from guoyJoe@csdn)





分享到:
评论

相关推荐

    oracle远程连接服务器出现 ORA-12170 TNS:连接超时 解决办法

    错误描述:oracle远程连接服务器出现 ORA-12170 TNS:连接超时 错误检查:有很多是oracle自身安装的问题,但是我这里服务器配置正常,监听正常,服务正常,远程可以ping通服务器。 这里主要是防火墙问题,解决办法: ...

    ora-12514的错误的原因

    ORA-12514 错误的原因和解决方法 ORA-12514 错误是 Oracle 数据库中常见的一种错误,它的出现可能是由于多种原因引起的。下面我们将从根本上探究 ORA-12514 错误的原因,并提供相应的解决方法。 原因 1:监听器没有...

    Oradim工具解决ora-12514其中一种情况

    通过Oradim工具,可以检查和更新实例的启动和关闭模式,这可能有助于解决某些ora-12514错误。例如,如果实例配置不正确,可能需要编辑实例以改变启动模式,然后重新启动服务。 总之,Oradim工具是Oracle数据库管理...

    Oracle_win32_11gR1_database出错误及解决办法

    2、ORA-12500:TNS:监听程序无法启动专用服务器进程或ORA-12560:TNS:协议适配器错误。 3、如果数据库服务启动失败,则很有可能是其注册表项值损坏。。。4、ORA-12154:TNS:能解析服务名 5、ORA-1034 :TNS:ORACLE不可用...

    plsql不能连接linux下oracle问题ORA-12514.doc

    PL/SQL无法连接到Linux下Oracle数据库,出现ORA-12514错误,是由于Linux环境下的Oracle数据库缺少了必要的服务配置。通过修改 listener.ora 文件和启动相关数据库和监听服务,可以解决这个问题,使PL/SQL能够连接到...

    ORA-12541TNS无监听程序解决

    "ORA-12541TNS无监听程序解决" Oracle 是一种关系型数据库管理系统,广泛应用于各行各业。然而,在安装 Oracle 后,连接数据库时可能会出现 ORA-12541:TNS:无监听程序的错误。本文将详细介绍该错误的解决方案。 ...

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

    Oracle Listener 配置和 ORA-12514 错误解决方法 Oracle Listener 是 Oracle 数据库的关键组件,负责监听客户端的连接请求,并将其路由到相应的数据库实例中。然而,在使用 Oracle 数据库时,经常会遇到 ORA-12514...

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

    在用PL/SQL Developer等客户端工具连接oracle服务器时出现ORA-12541:TNS:无监听程序的错误,如下图: 发现原来是oracle的监听没有启动,重启监听后就连接成功了,下面跟大家分享一下如何启动oracle的监听。 1.在安装...

    listener_ora--sqlnet_ora--tnsnames_ora的关系以及手工配置举例

    这个文件定义了Oracle数据库服务器上的监听器(Listener),监听器是Oracle数据库服务与客户端之间通信的关键组件。它负责接收来自客户端的连接请求,并将这些请求转发到相应的数据库实例。`listener.ora` 文件中...

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

    刚开始时,有一台服务器的ORACLE 11G数据库连接不上,报错:ORA-12541:TNS:无监听程序 重启服务里面的两个Oracle服务,都没解决。 在网上看到一篇文章说另一种可能是oracle目录目录下listener.log日志文件过大(达到...

    oracle 11g配置 解决启动连接数据库出现的ora错误

    Oracle 11g数据库在配置和使用过程中可能会遇到各种启动连接错误,比如ORA-12560、ORA-01034、ORA-27101、ORA-00119以及ORA-00132等。这些错误通常是由于数据库实例未正确启动、监听程序配置不当或者网络通信问题...

    oracle9i数据库监听配置方法

    Oracle 9i数据库监听是数据库服务对外提供连接的关键组件,它负责管理客户端与数据库服务器间的通信。监听器(Listener)监听特定的网络端口,当客户端请求连接时,监听器会处理这些请求,并将连接导向相应的数据库...

    PL/SQL登录Oracle数据库报错ORA-12154:TNS:无法解析指定的连接标识符已解决(本地未安装Oracle需要连接服务器上的)

    ORA-12154:TNS:无监听程序 错误分析一、PL/SQL 客户端登录到数据库,如果配置错误会有以上错误,如下图。 这个错误主要是pl/sql客户端的tnsnames.ora配置错误,或者是输入 database选项错误。 错误分析二、未配置...

    plsql连接oracle数据库报ora 12154错误解决方法

    plsql连接oracle数据库报ora 12154错误 今天遇到一个问题,使用sqlplus能够连接到远程的数据库,但是使用plsql却连接不上,报错”ORA-12154: TNS: 无法解析指定的连接标识符” 解决方法如下: 1.先检查服务器端的...

    Oracle常见报错分析

    三、ORA-12500:TNS:监听程序无法启动专用服务器进程 ORA-12500 错误是由于 Oracle 数据库服务没有启动所致。可以使用命令 net start ORACLESERVICEORADB 启动数据库服务。如果仍没有解决问题,可以删除数据库服务...

    Oracle出现ora-12154无法解析指定连接标识符的解决方法

    Oracle数据库在运行过程中,有时会出现“ORA-12154: TNS: 无法解析指定的连接标识符”的错误,这通常是由于客户端未能正确配置网络服务名导致的。Oracle数据库不同于其他数据库系统,它不直接通过IP地址进行连接,...

    用pl/sql连接本地数据库时报ORA-12541:TNS:无监听程序

    在dos窗口都能登录数据库,但通过PL/SQL登录是老是报 ORA-12541 或12154的错,在Oracl Net Manager 中也配置好了服务器命名和监听程序,查看系统配置文件系统参数文件为D:oracleproduct10.1.0db_1 ...

    初学Oracle最经常碰到的错误及解决方案

    ORA-12541:TNS:没有监听器。...ORA-12500:TNS:监听程序无法启动专用服务器进程,或ORA-12560:TNS:协议适配器错误。原因:ORACLE的数据库服务没有启动。使用命令net start ORACLESERVICEORADB即可。

    ORA-28547:连接服务器失败,可能是Oracle Net管理错误

    关于这个问题,测试了很多方案,终于成功,现提供如下排查思路: 1、首先排查oci.dll不一致(navicat for oracle与oracle版本不一致)问题,这个操作必须进行。...2、如果此方式仍不能解决,需进行如下操作,

    Oracle数据库监听配置

    Oracle数据库监听配置是确保客户端能够成功连接到Oracle服务器的关键步骤。监听器,即LISTENER,是Oracle服务器端的一个网络服务,它的主要职责是监听来自客户端的数据库连接请求。当客户端尝试连接时,监听器会验证...

Global site tag (gtag.js) - Google Analytics