【故障处理】ORA-12545

【故障处理】ORA-12545: Connect failed because target host or object does not exist

1  BLOG文档结构图

 

 

 

2  前言部分

2.1  导读和注意事项

各位技术爱好者,看完本文后,你可以掌握如下的技能,也可以学到一些其它你所不知道的知识,~O(∩_∩)O~:

① 错误ORA-12545: Connect failed because target host or object does not exist的一种问题解决

  Tips:

① 本文在ITpub(http://blog.itpub.net/26736162)、博客园(http://www.cnblogs.com/lhrbest)和微信公众号(xiaomaimiaolhr)有同步更新

② 文章中用到的所有代码,相关软件,相关资料请前往小麦苗的云盘下载(http://blog.itpub.net/26736162/viewspace-1624453/

③ 若文章代码格式有错乱,推荐使用搜狗、360或QQ浏览器,也可以下载pdf格式的文档来查看,pdf文档下载地址:http://blog.itpub.net/26736162/viewspace-1624453/,另外itpub格式显示有问题,可以去博客园地址阅读

④ 本篇BLOG中命令的输出部分需要特别关注的地方我都用灰色背景和粉红色字体来表示,比如下边的例子中,thread 1的最大归档日志号为33,thread 2的最大归档日志号为43是需要特别关注的地方;而命令一般使用黄色背景和红色字体标注;对代码或代码输出部分的注释一般采用蓝色字体表示。

  List of Archived Logs in backup set 11

  Thrd Seq     Low SCN    Low Time            Next SCN   Next Time

  ---- ------- ---------- ------------------- ---------- ---------

  1    32      1621589    2015-05-29 11:09:52 1625242    2015-05-29 11:15:48

  1    33      1625242    2015-05-29 11:15:48 1625293    2015-05-29 11:15:58

  2    42      1613951    2015-05-29 10:41:18 1625245    2015-05-29 11:15:49

  2    43      1625245    2015-05-29 11:15:49 1625253    2015-05-29 11:15:53

 

[ZHLHRDB1:root]:/>lsvg -o

T_XDESK_APP1_vg

rootvg

[ZHLHRDB1:root]:/>

00:27:22 SQL> alter tablespace idxtbs read write;

 

====》2097152*512/1024/1024/1024=1G 

 

本文如有错误或不完善的地方请大家多多指正,ITPUB留言或QQ皆可,您的批评指正是我写作的最大动力。

 

 

3  故障分析及解决过程

 

3.1  故障环境介绍

 


项目


source db


db 类型


RAC


db version


11.2.0.3


db 存储


ASM


OS版本及kernel版本


AIX 64位 6.1.0.0

 

3.2  故障发生现象及报错信息

同事过来找我说数据库不能连接,如下情况:

cssp@ZFZHLHRDB1:/cssp$ sqlplus tacc/tacc

 

SQL*Plus: Release 11.2.0.3.0 Production on Fri Aug 12 16:35:42 2016

 

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

 

ERROR:

ORA-12545: Connect failed because target host or object does not exist

 

 

Enter user-name:

ERROR:

ORA-12545: Connect failed because target host or object does not exist

 

注意:以上的连接方式采用了TWO_TASK这个环境变量,在Unix和Linux环境下,可以设置TWO_TASK环境变量,当用户连接数据库且没有指定服务名时,会自动利用TWO_TASK的设置作为环境变量连接数据库。有关这个环境变量的更多内容可以参考:http://blog.itpub.net/26736162/viewspace-2112274/http://blog.itpub.net/26736162/viewspace-2112277/

 

 

3.3  故障分析及解决过程

我采用了tnsping、用tnsnames连接和检查3大网络配置文件,都没有问题,如下:

cssp@ZFZHLHRDB1:/cssp$ tnsping oratacc1

 

TNS Ping Utility for IBM/AIX RISC System/6000: Version 11.2.0.3.0 - Production on 12-AUG-2016 16:36:14

 

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

 

Used parameter files:

/oracle/app/oracle/product/11.2.0/db/network/admin/sqlnet.ora

 

 

Used TNSNAMES adapter to resolve the alias

Attempting to contact (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = ZFtaccDB-scan)(PORT = 1521)) (ADDRESS = (PROTOCOL = TCP)(HOST = 22.188.173.15)(PORT = 1521)) (ADDRESS = (PROTOCOL = TCP)(HOST = 22.188.173.16)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = oratacc1)))

OK (80 msec)

cssp@ZFZHLHRDB1:/cssp$ sqlplus tacc/[email protected]

 

SQL*Plus: Release 11.2.0.3.0 Production on Fri Aug 12 16:36:25 2016

 

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

 

 

Connected to:

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

With the Partitioning, Real Application Clusters, Automatic Storage Management, OLAP,

Data Mining and Real Application Testing options

 

SQL> exit

 

cssp@ZFZHLHRDB1:/cssp$ oerr ora 12545

12545, 00000, "Connect failed because target host or object does not exist"

// *Cause: The address specified is not valid, or the program being

// connected to does not exist.

// *Action: Ensure the ADDRESS parameters have been entered correctly; the

// most likely incorrect parameter is the node name.  Ensure that the

// executable for the server exists (perhaps "oracle" is missing.)

// If the protocol is TCP/IP, edit the TNSNAMES.ORA file to change the

// host name to a numeric IP address and try again.

 

查看环境变量的设置:

cssp@ZFZHLHRDB1:/cssp$ more .profile

#For CICS

export CICS=/usr/lpp/cics

#export LANG=zh_CN.UTF-8

export LANG=en_US

 

#For ORACLE

ORACLE_BASE=/oracle/app/oracle

ORACLE_HOME=/oracle/app/oracle/product/11.2.0/db

TWO_TASK=oratacc1

ORACLE_SID=oratacc1

ORACLE_TERM=vt100

ORACLE_OWNER=oracle

export ORACLE_BASE ORACLE_HOME ORACLE_SID ORACLE_TERM ORACLE_OWNER

 

 

LD_LIBRARY_PATH=/oracle/app/oracle/product/11.2.0/db/lib:/oracle/app/oracle/product/11.2.0/db/lib32

#LD_LIBRARY_PATH=/oracle/app/oracle/product/11.2.0/db/lib32

#export LIBPATH=$LIBPATH:/oracle/app/oracle/product/11.2.0/db/lib

 

NLS_LANG=American_America.ZHS16GBK

ORA_NLS33=/oracle/app/oracle/product/11.2.0/db/nls/data

export PATH=/usr/java5/bin:/cssp/jscs

export PATH=$PATH:/oracle/app/oracle/product/11.2.0/db/OPatch:/oracle/app/oracle/product/11.2.0/db/bin:/bin:/usr/ccs/bin:/usr/bin/X11:/sharebkup/data/peij

 

OPATCH_PLATFORM_ID=212

export LD_LIBRARY_PATH NLS_LANG ORA_NLS33 PATH TMP TMPDIR OPATCH_PLATFORM_ID

export AIXTHREAD_SCOPE=S

umask 022

export DBCA_RAW_CONFIG=/oracle/dbname_raw.conf

export PS1=‘[email protected]‘`hostname`:‘$PWD‘‘$ ‘

export ORA_NL10=$ORACLE_HOME/nls/data

set -o vi

export EDITOR=vi

 

export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK

export NLS_DATE_FORMAT=YYYY-MM-DD

 

export PATH=$PATH:/usr/vac/bin:/var/ifor:/usr/opt/ifor/ls/conf:/usr/lib/cobol/bin:/usr/lpp/cics/bin:/usr/lpp/cics/etc:/usr/lpp/dce/bin:/usr/lpp/mqm/bin:/usr/lpp/mqm/sa

mp/bin:/usr/mqm/samp/bin:$HOME/bin:$ORACLE_HOME/bin:/csspd05u/test/bin:.:/usr/mqm/samp/bin

export LIBPATH=/usr/mqm/lib:$ORACLE_HOME/lib32:$COBDIR/coblib:/usr/lib:/lib:/usr/lpp/cics/lib:/usr/lpp/encina/lib:/usr/lpp/dce/lib:.

export NLSPATH=/usr/lib/nls/msg/%L/%N:/usr/lpp/cics/msg/%L/%N:/usr/lpp/nls/msg/en_US/%N:/usr/lpp/encina/msg/%L/%N:/usr/lpp/dce/lib/nls/msg/%L/%N

 

#For cssp

export JAVA_HOME=/usr/java5_64

export cssp_HOME=$HOME

export CLASSPATH=/csspd05u/CF

 

# PS1=‘[`hostname`:$LOGNAME:$PWD]‘

alias rm=‘rm -i‘

alias lf=‘ls -aF‘

alias l=‘ls -al‘

set -o vi

可以看到上边的环境变量很乱,尤其PATH的配置有问题,所以我把这个部分的内容整理了一下,最后为:

umask 022

#For CICS

export CICS=/usr/lpp/cics

#export LANG=zh_CN.UTF-8

export LANG=en_US

 

#For ORACLE

export ORACLE_BASE=/oracle/app/oracle

export ORACLE_HOME=/oracle/app/oracle/product/11.2.0/db

export LD_LIBRARY_PATH=/oracle/app/oracle/product/11.2.0/db/lib:/oracle/app/oracle/product/11.2.0/db/lib32

export TWO_TASK=oratacc1

export ORACLE_SID=oratacc1

export ORACLE_TERM=vt100

export ORACLE_OWNER=oracle

export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK

 

 

export ORA_NLS33=/oracle/app/oracle/product/11.2.0/db/nls/data

export OPATCH_PLATFORM_ID=212

export AIXTHREAD_SCOPE=S

 

export DBCA_RAW_CONFIG=/oracle/dbname_raw.conf

export PS1=‘[email protected]‘`hostname`:‘$PWD‘‘$ ‘

export ORA_NL10=$ORACLE_HOME/nls/data

export EDITOR=vi

 

 

export PATH=$PATH:/usr/java5/bin:/cssp/jscs

export PATH=$PATH:/oracle/app/oracle/product/11.2.0/db/OPatch:/oracle/app/oracle/product/11.2.0/db/bin:/bin:/usr/ccs/bin:/usr/bin/X11:/sharebkup/data/peij

export PATH=$PATH:/usr/vac/bin:/var/ifor:/usr/opt/ifor/ls/conf:/usr/lib/cobol/bin:/usr/lpp/cics/bin:/usr/lpp/cics/etc:/usr/lpp/dce/bin:/usr/lpp/mqm/bin:/usr/lpp/mqm/samp/bin:/usr/mqm/samp/bin:$HOME/bin:$ORACLE_HOME/bin:/csspd05u/test/bin:.:/usr/mqm/samp/bin

export LIBPATH=/usr/mqm/lib:$ORACLE_HOME/lib32:$COBDIR/coblib:/usr/lib:/lib:/usr/lpp/cics/lib:/usr/lpp/encina/lib:/usr/lpp/dce/lib:.

export NLSPATH=/usr/lib/nls/msg/%L/%N:/usr/lpp/cics/msg/%L/%N:/usr/lpp/nls/msg/en_US/%N:/usr/lpp/encina/msg/%L/%N:/usr/lpp/dce/lib/nls/msg/%L/%N

 

#For cssp

export JAVA_HOME=/usr/java5_64

export cssp_HOME=$HOME

export CLASSPATH=/csspd05u/CF

 

# PS1=‘[`hostname`:$LOGNAME:$PWD]‘

alias rm=‘rm -i‘

alias lf=‘ls -aF‘

alias l=‘ls -al‘

set -o vi

修改.profile文件后,重新登录试试:

cssp@ZFZHLHRDB1:/cssp$ . .profile

cssp@ZFZHLHRDB1:/cssp$ sqlplus tacc/tacc

 

SQL*Plus: Release 11.2.0.3.0 Production on Fri Aug 12 16:43:26 2016

 

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

 

 

Connected to:

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

With the Partitioning, Real Application Clusters, Automatic Storage Management, OLAP,

Data Mining and Real Application Testing options

 

SQL> exit

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

With the Partitioning, Real Application Clusters, Automatic Storage Management, OLAP,

Data Mining and Real Application Testing options

可以正常登陆数据库了,可见环境变量的配置对sqlplus的登录有至关重要的作用。

  About Me

..........................................................................................................................................................................................................                        

v 本文作者:小麦苗,只专注于数据库的技术,更注重技术的运用

v 本文在ITpub(http://blog.itpub.net/26736162)、博客园(http://www.cnblogs.com/lhrbest)和个人微信公众号(xiaomaimiaolhr)上有同步更新,推荐pdf文件阅读或博客园地址阅读

v QQ群:230161599 微信群:私聊

v 本文itpub地址:http://blog.itpub.net/26736162/viewspace-2123414/ 博客园地址:http://www.cnblogs.com/lhrbest/articles/5766183.html

v 本文pdf版:http://yunpan.cn/cdEQedhCs2kFz (提取码:ed9b)

v 小麦苗分享的其它资料:http://blog.itpub.net/26736162/viewspace-1624453/

v 联系我请加QQ好友(642808185),注明添加缘由

v 于 2016-08-12 09:00~2016-08-12 19:00 在中行完成

v 【版权所有,文章允许转载,但须以链接方式注明源地址,否则追究法律责任】

..........................................................................................................................................................................................................

长按识别二维码或微信客户端扫描下边的二维码来关注小麦苗的微信公众号:xiaomaimiaolhr,学习最实用的数据库技术。

 

 

 

 

 

时间: 2024-12-29 11:19:11

【故障处理】ORA-12545的相关文章

RAC 10.2.0.5,客户端登陆间断遭遇ORA-12545

试验环境: 服务端:OEL 5.7 + Oracle 10.2.0.5 RAC 客户端:Windows 7 + Oracle 11.2.0.1 Client 1.客户端登陆间断遭遇ORA-12545,现象如下: C:\Users\xiaoyu>sqlplus system/[email protected]192.168.1.171/jy.oracle.com SQL*Plus: Release 11.2.0.1.0 Production on 星期二 5月 20 19:43:52 2014 C

【故障处理】告警日志报“ORA-01565 Unable To open Spfile”

[故障处理]告警日志报"ORA-01565 Unable To open Spfile" 1.1  BLOG文档结构图 1.2  故障分析及解决过程 1.2.1  故障环境介绍 项目 source db db 类型 RAC db version 12.1.0.2.0 db 存储 ASM OS版本及kernel版本 SuSE Linux Enterprise Server(SLES 11) 64位 1.2.2  故障发生现象及报错信息 客户的12.1.0.2的RAC库告警日志报ORA-0

【故障处理】ORA-12162 错误的处理

[故障处理]ORA-12162: TNS:net service name is incorrectly specified 一.1  场景 今天拿到一个新的环境,可是执行sqlplus / as sysdba的时候不能登录,报ORA-12162: TNS:net service name is incorrectly specified的错误,之前没有碰到过,就随时记录下,备查. 一.2  实验还原 Last unsuccessful login: Thu Mar 19 16:59:06 BE

【故障处理】一次RAC故障处理过程

[故障处理]一次RAC故障处理过程 1.1  故障环境介绍 项目 source db db 类型 2节点RAC db version 11.2.0.1.0 db 存储 ASM OS版本及kernel版本 RHEL 6.6 1.2  故障处理过程 晚上10点多,一个网友喊我帮忙处理RAC宕机不能启动的问题,并且告知涉及到多路径和存储的事.小麦苗对存储一向不太懂,多路径也没怎么接触,自己也没研究过这个东西.既然找到了我,那就不能不管啊,硬着头皮上去看看.结果悲催了,搞了N个小时,求助了N个人,搞到第

【故障处理】分布式事务ORA-01591错误解决

[故障处理]分布式事务ORA-01591错误解决 1  BLOG文档结构图       2  前言部分 2.1  导读和注意事项 各位技术爱好者,看完本文后,你可以掌握如下的技能,也可以学到一些其它你所不知道的知识,~O(∩_∩)O~: ① 分布式事务的简单概念         ② ORA-01591错误解决   Tips: ① 本文在ITpub(http://blog.itpub.net/26736162).博客园(http://www.cnblogs.com/lhrbest)和微信公众号(x

【故障处理】ORA-19809错误处理

[故障处理]ORA-19809错误处理 1  BLOG文档结构图       2  前言部分 2.1  导读和注意事项 各位技术爱好者,看完本文后,你可以掌握如下的技能,也可以学到一些其它你所不知道的知识,~O(∩_∩)O~: ① ORA-19809: limit exceeded for recovery files错误的处理方法 RMAN-03009: failure of backup command on ORA_DISK_1 channel at 07/26/2016 17:35:35

【故障处理】 DBCA建库报错CRS-2566

[故障处理] DBCA建库报错CRS-2566 PRCR-1071 PRCR-1006 一.1  BLOG文档结构图       一.2  前言部分   一.2.1  导读和注意事项 各位技术爱好者,看完本文后,你可以掌握如下的技能,也可以学到一些其它你所不知道的知识,~O(∩_∩)O~: ① dbca静默建库 ② 将监听加入CRS中     Tips:        ① 若文章代码格式有错乱,推荐使用搜狗.QQ或360浏览器,也可以下载pdf格式的文档来查看,pdf文档下载地址:http://

Java虚拟机8:虚拟机性能监控与故障处理工具

http://www.cnblogs.com/xrq730/p/4842483.html 前言 定位系统问题的时候,知识.经验是基础,数据是依据,工具是运用知识处理数据的手段.这里说的数据包括:运行日志.异常堆栈.GC日志.线程快照.堆转储快照等.经常使用适当的虚拟机监控和分析的工具可以加快分析数据.定位解决问题的速度. jps:虚拟机进程状况工具 首先约定一下运行的代码都是以下这段 1 public class TestMain 2 { 3 public static void main(St

讨厌麻烦的ora 01722无效数字

webservice开发过程中,数据库由原来的oracle改为现在的sql server.然后重新调试,结果报出ora 01722无效数字的错误. 由于连接oracle数据库的时候并没有问题,所以一开始我以为是数据库不同,导致部分数据类型差异,(但又觉得有点离谱,切换数据库,不至于会导致这种错误吧) 经过排查,总结得出如下: 1.对于两个类型不匹配(一个数字类型,一个非数字类型,同下)的值进行赋值操作;2.两个类型不匹配的值进行比较操作(例如,"=");3.to_number函数中的值