DB & SQL
oracle TNS 접속시 ORA-12514 에러
puttico
2015. 12. 6. 00:05
oracle instant client를 이용하여 TNS 접속 설정하는 것에 삽질 좀 하다가
설정을 어째어째 하고 접속 할려고 하니 ORA-12514 에러로 접속이 안되네... ㅠㅠ
여기저기 돌아다녀보니 tnsnames.ora 설정을 바꾸면 된다고 한다.
tns_name= (DESCRIPTION= (ADDRESS= (PROTOCOL=TCP) (HOST=192.***.***.***) (PORT=1521) ) (CONNECT_DATA= (SERVER=DEDICATED) (SERVICE_NAME=orcl) ) )
원래 설정파일의 내용은 위와 같은데 이것을 아래처럼 해주면 잘 접속된다.
tns_name= (DESCRIPTION= (ADDRESS= (PROTOCOL=TCP) (HOST=192.***.***.***) (PORT=1521) ) (CONNECT_DATA= (SERVER=DEDICATED) (SID=orcl) ) )
SERVICE_NAME 항목을 SID로 바꿔주었다.
SID로 바꾸지 않고 접속하는 방법으로 오라클 서버의 TNS 설정과 동일하게 하면된다.
일단 서버의 TNS 설정을 보면 아래처럼 호스트명이 SID뒤에 붙어있는 경우이다.
tns_name= (DESCRIPTION= (ADDRESS= (PROTOCOL=TCP) (HOST=hostname) (PORT=1521) ) (CONNECT_DATA= (SERVER=DEDICATED) (SERVICE_NAME=orcl.hostname) ) )
이런 경우는 SERVICE_NAME의 값을 hostname까지 동일하게 해 주면 잘 접속이 된다.
아래처럼 설정하면 된다.
tns_name= (DESCRIPTION= (ADDRESS= (PROTOCOL=TCP) (HOST=192.***.***.***) (PORT=1521) ) (CONNECT_DATA= (SERVER=DEDICATED) (SERVICE_NAME=orcl.hostname) ) )