Oracle 데이터베이스에서 TNS-12541: TNS:no listener 오류가 발생하면, 이는 클라이언트가 데이터베이스 리스너(Listener)에 연결할 수 없음을 의미합니다. 주로 리스너 프로세스가 실행되지 않았거나, 네트워크 설정이 올바르지 않을 때 발생합니다.
1. 리스너 프로세스 상태 확인
먼저, 리스너가 실행 중인지 확인하려면 아래 명령어를 사용하세요.
lsnrctl status
리스너가 실행 중이라면 서비스 상태가 표시되지만, 실행되지 않았다면 TNS:no listener 메시지가 나타날 것입니다.
2. 리스너 시작하기
리스너가 실행되지 않았다면 아래 명령어로 시작할 수 있습니다.
lsnrctl start
리스너가 정상적으로 실행되었는지 다시 확인하려면 다음을 실행하세요.
lsnrctl status
3. listener.ora 설정 확인
리스너 설정 파일(listener.ora)이 올바르게 구성되어 있는지 확인합니다. 기본적으로 이 파일은 $ORACLE_HOME/network/admin/ 디렉터리에 위치합니다.
예제 설정:
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.000.0.000)(PORT = 1521))
)
)
파일을 수정한 후에는 반드시 리스너를 다시 시작해야 합니다.
lsnrctl reload
4. 방화벽 및 포트 확인
리스너가 실행 중이어도 네트워크 차단으로 인해 연결되지 않을 수 있습니다. 방화벽에서 1521 포트가 열려 있는지 확인하세요.
netstat -tulnp | grep 1521
필요한 경우 방화벽에서 1521 포트를 허용합니다.
sudo firewall-cmd --add-port=1521/tcp --permanent
sudo firewall-cmd --reload
5. 클라이언트 측 tnsnames.ora 설정 확인
클라이언트에서 사용 중인 tnsnames.ora 파일이 올바르게 설정되어 있는지 확인하세요. 이 파일은 $ORACLE_HOME/network/admin/에 위치합니다.
예제 설정:
MYDB =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.000.0.000)(PORT = 1521))
(CONNECT_DATA =
(SERVICE_NAME = mydb)
)
)
올바르게 설정되었는지 확인하려면 다음 명령어를 실행해봅니다.
tnsping MYDB
'Database > Oracle' 카테고리의 다른 글
[Oracle]ORA-27102: out of memory 오류 해결 방법 (0) | 2025.02.24 |
---|---|
[Oracle]TNS-12560: TNS:protocol adapter error 오류 해결 방법 (0) | 2025.02.24 |
[Oracle]ORA-01034: ORACLE not available 오류 해결 방법 (0) | 2025.02.24 |
[Oracle]ORA-12514: TNS:listener does not currently know of service requested 오류 해결 방법 (0) | 2025.02.24 |
[Oracle]ORA-28000: the account is locked 오류 해결 방법 (0) | 2025.02.24 |