프린트 하기

OS 환경 : Oracle Linux 8.7 (64bit)

 

DB 환경 : Oracle Database 19.27.0.0

 

에러 : ORA-12547: TNS:lost contact

오라클 19c에서 sqlplus / as sysdba로 접속할때 또는 system/oracle 유저로 접속할때 ORA-12547: TNS:lost contact 에러가 발생하는 문제

1
2
3
4
5
6
7
8
9
10
11
12
$ sqlplus / as sysdba
 
SQL*Plus: Release 19.0.0.0.0 - Production on Fri Feb 20 15:48:06 2026
Version 19.27.0.0.0
 
Copyright (c) 1982, 2024, Oracle.  All rights reserved.
 
ERROR:
ORA-12547: TNS:lost contact
 
 
Enter user-name:

에러가 발생함

 

 

tns를 이용해 접속

1
2
3
4
5
6
7
8
9
10
11
12
13
14
$ sqlplus system/oracle@ORA19DBFS
 
SQL*Plus: Release 19.0.0.0.0 - Production on Fri Feb 20 15:49:22 2026
Version 19.27.0.0.0
 
Copyright (c) 1982, 2024, Oracle.  All rights reserved.
 
Last Successful login time: Fri Feb 20 2026 15:47:41 +09:00
 
Connected to:
Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.27.0.0.0
 
SQL>

 

동일 db지만 정상적으로 접속됨

 

 

해결 방법 : ORACLE_HOME export 재수행

ORACLE_HOME의 맨 뒤에 /(슬래시)가 붙은 문제임

현재 ORACLE_HOME 확인

1
2
$ echo $ORACLE_HOME
/app/oracle/product/19c/

ORACLE_HOME 맨 뒤에 /가 붙어있음(~~19c/)

 

 

pmon의 pid로 ORACLE_HOME 경로 확인

1
2
$ ps -ef | grep pmon_$ORACLE_SID | grep -v grep | awk '{print $2}' | xargs -I{} cat /proc/{}/environ | tr '\0' '\n' | grep ORACLE_HOME
ORACLE_HOME=/app/oracle/product/19c

현재 ORACLE_HOME 맨 뒤에 /가 없음(~~19c)

 

 

ORACLE_HOME export 재수행

1
$ export ORACLE_HOME=/app/oracle/product/19c

 

 

db 접속 시도

1
2
3
4
5
6
7
8
9
10
11
12
13
$ sqlplus / as sysdba
 
SQL*Plus: Release 19.0.0.0.0 - Production on Fri Feb 20 16:23:24 2026
Version 19.27.0.0.0
 
Copyright (c) 1982, 2024, Oracle.  All rights reserved.
 
 
Connected to:
Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.27.0.0.0
 
SQL>

정상적으로 접속됨

 

 

원인 : db 기동시 사용된 ORACLE_HOME과 현재 ORACLE_HOME의 값이 달라서 발생한 문제

db 기동시 사용된 ORACLE_HOME과 현재 ORACLE_HOME의 값이 달라서 발생한 문제로
export ORACLE_HOME만 다시 해주면 정상적으로 접속됨
본문의 경우와 반대로 슬래시가 안붙어 있는 상태로 TNS 에러가 발생하고 슬래시를 붙여주면 잘 접속되는 경우도 존재함

 

 

참조 : 

19.x: datapatch failed with " ORA-12547: TNS:lost contact (DBD ERROR: OCIServerAttach) "(KB108831)
https://www.oracledbworld.com/oracle-error/database-upgrade-database-connect-failed-with-ora-12547-tnslost-contact-dbd-error-ociserverattach/#google_vignette