天天看点

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

【故障处理】ORA-12162: TNS:net service name is incorrectly specified

今天拿到一个新的环境,可是执行sqlplus / as sysdba的时候不能登录,报ORA-12162: TNS:net service name is incorrectly specified的错误,之前没有碰到过,就随时记录下,备查。

Last unsuccessful login: Thu Mar 19 16:59:06 BEIST 2015 on /dev/pts/0 from 200.31.177.54

Last login: Thu Jul 16 22:44:20 BEIST 2015 on ftp from ::ffff:200.31.156.201

*******************************************************************************

*                                                                             *

*  Welcome to AIX Version 5.3!                                                *

*  Please see the README file in /usr/lpp/bos for information pertinent to    *

*  this release of the AIX Operating System.                                  *

oracle@SJCk4:/home/oracle>

oracle@SJCk4:/home/oracle>ps -ef|grep ora_pmon_

  oracle  348182       1   0   Apr 25      -  7:42 ora_pmon_DATAWDB

  oracle  630842       1   0   Apr 25      - 20:02 ora_pmon_COGDB

  oracle  843948       1   0   Apr 25      -  6:45 ora_pmon_ETLDB

  oracle 5005418 4427974   0 09:44:03  pts/0  0:00 grep ora_pmon_

oracle@SJCk4:/home/oracle>ORACLE_SID=DATAWDB

oracle@SJCk4:/home/oracle>echo $ORACLE_SID

DATAWDB

oracle@SJCk4:/home/oracle>sqlplus / as sysdba

SQL*Plus: Release 10.2.0.1.0 - Production on Fri Jul 17 09:56:44 2015

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

ERROR:

ORA-12162: TNS:net service name is incorrectly specified

Enter user-name:

SP2-0157: unable to CONNECT to ORACLE after 3 attempts, exiting SQL*Plus

oracle@SJCk4:/home/oracle>echo $ORACLE_HOME

/app/oracle/product/10.2.0/db_1

oracle@SJCk4:/home/oracle>export ORACLE_SID=DATAWDB

SQL*Plus: Release 10.2.0.1.0 - Production on Fri Jul 17 09:59:27 2015

Connected to:

Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - 64bit Production

With the Partitioning, OLAP and Data Mining options

SQL>

[oracle@rhel6_lhr ~]$ oerr ora 12162

12162, 00000, "TNS:net service name is incorrectly specified"

// *Cause:  The connect descriptor corresponding to the net service name in

// TNSNAMES.ORA or in the directory server (Oracle Internet Directory) is

// incorrectly specified.

// *Action: If using local naming make sure there are no syntax errors in

// the corresponding connect descriptor in the TNSNAMES.ORA file. If using

// directory naming check the information provided through the administration

// used for directory naming.

[oracle@rhel6_lhr ~]$

可以确定的是ORA-12162是由于ORACLE_SID未设置或者设置不正确导致的,推荐使用export ORACLE_SID=XXX来设置,当不能设置的时候再用ORACLE_SID=XXX来直接设置。