실행중인 프로세서를 둘러보는중, 키지도 않은 오라클이 메모리를 500MB씩 먹으면서 실행중이였던걸
발견하고 종료했다. 이게 문제였던건지 잘 되던 프로젝트를 RUN시키니 인덱스는 잘 나왔지만
데이터베이스를 사용하는 부분(LIST)으로 진입하니 갑자기 ORA-12514 오류가 생겼다.
재부팅을 해도 소용이 없다.
오라클 SQL로 직접 들어가서 로그인을 하려고하니 ORA-12514 오류가 오라클SQL상에서 아예 출력됨.
일단 방화벽 문제가 있을 수 있다고 해서
제어판 - 시스템 및 보안 - Windows Defender 방화벽 - 고급설정 - 인바운드규칙 -
[새규칙..] 을 눌러서 포트- 특정로컬포트에 내가 사용하는 포트번호인 1521을 입력하고 재부팅 - 실패
작업관리자(ctrl+alt+delete) - 서비스 - Oracle과 관련되있는 서비스들을 확인해보니
OracleService 가 종료되어있어서 실행 - 다시 실행해보니 오라클SQL상에선 문제가 없지만
여전히 프로젝트-LIST 에는 ORA-12514가 뜸.
다시 서비스로가서 확인해보니 OracleTNSListener가 종료되어있는 것을 확인 -
실행 후 다시 확인해보니 정상 작동한다.
오라클 리스너는
오라클 서버에서 클라이언트의 요청을 듣고, 클라이언트와의 통신 환경을 설정하는 파일이다.
오라클 클라이언트에서 서버로 접속할 때 필요한 프로토콜 및 포트 정보 등을 설정하는 파일이다.
리스너가 가지고 있어야 하는 정보는 ①프로토콜, ②호스트, ③포트번호, ④서비스네임 이다.
jdbc 부분에 입력되있는 DriverManager와 정보들을 오라클로 연결해주는게 바로 리스너라는 것.
그래서 리스너가 비확성되있을 때는 오라클SQL상에선 문제가 없지만 프로젝트상에선 연결이
안되어 동일한 오류가 출력되고 있던 상황이였다.
또 위에 리스너의 정보를 잘 못 입력한 경우에도 이 오류가 나올 수 있다고 하니,
ORA-12514 오류가 나온다면
정보가 올바르게 입력되있는지 확인- 서비스 상태 확인 - 방화벽 포트번호 열어주기
순으로 하면 되겠다.
그래도 안된다면 오라클이 설치되있는 폴더로 들어가서
$ORACLE_HOME/network/admin에 있는
Listener.ora
파일이 온전히 있는지 확인하자.
'DB > ORACLE' 카테고리의 다른 글
[오라클]CASCADE 제약조건 추가하기 (0) | 2021.09.06 |
---|---|
오라클 시퀸스란? (0) | 2021.08.02 |
페이징- 서브쿼리,ROW-NUMBER()를 이용한 쿼리작성 (0) | 2021.07.29 |
오라클 계정만들기,sid 확인 (0) | 2021.07.26 |