PostgreSQL 포트 변경
개요
본 문서는 무해화 제품에서 사용하는 PostgreSQL 기본 포트(5432) 를 고객사 정책에 맞게 변경하는 방법을 안내합니다.
PostgreSQL 포트를 변경하면, DB에 접속하는 영향 서비스의 설정 파일에도 변경된 포트가 반영되어야 합니다.
기본 정보
| 항목 | 값 |
|---|---|
| 기본 포트 | 5432 |
| 변경 예시 | 15432 |
| 대상 서비스 | PostgreSQL |
| 영향 서비스 | Apache Tomcat 10.1 CDR_SERVICE_UPLOAD Apache Tomcat 10.1 CDR_SERVICE_API Apache Tomcat 9.0 CDR_WEBCONSOLE |
| 제품 기본 DB 설정 파일 경로 | E:\softcamp\DB\PostgreSQL\data\postgresql.conf |
| 서비스 설정 파일 경로 | E:\softcamp\sanitrans\sanitrans\config\cdrbroker.propertiesE:\softcamp\sanitrans\sanitrans\config\WebConsoleApi.properties |
포트 변경 절차
1단계: PostgreSQL 설정 파일 수정
설정 파일 경로: E:\softcamp\DB\PostgreSQL\data\postgresql.conf
DB가 별도 서버(리눅스)인 경우
DB 서비스가 별도 리눅스 서버에 구축된 경우에도 동일하게 설치 경로(데이터 디렉터리) 아래의 postgresql.conf 를 수정하면 됩니다.
// 일반적으로 postgresql.conf는 $PGDATA(데이터 디렉터리) 하위에 위치합니다.
// 예: /var/lib/pgsql/data/postgresql.conf 또는 /var/lib/postgresql/<version>/main/postgresql.conf
변경 항목
60번 라인 근처의 다음 항목을 변경합니다.
# PostgreSQL 서버 포트
port = 5432
변경 예시:
# PostgreSQL 서버 포트
port = 15432
2단계: PostgreSQL 서비스 재시작
설정 파일 저장 후 PostgreSQL 서비스를 재시작합니다.
- Windows 서비스 관리자(
services.msc)에서 PostgreSQL 서비스를 재시작
또는 (환경에 맞게) PowerShell에서 재시작할 수 있습니다.
# PowerShell 관리자 권한으로 실행
# NOTE: 서비스 이름은 설치 환경에 따라 다를 수 있습니다.
Get-Service | Where-Object { $_.DisplayName -like "*PostgreSQL*" }
# 예시(서비스 이름 확인 후 사용)
# Restart-Service "postgresql-x64-16"
// PostgreSQL 포트 변경은 재시작 전에는 반영되지 않습니다.
DB가 별도 서버(리눅스)인 경우
리눅스 서버에서는 postgresql.conf 수정 후 PostgreSQL 서비스를 재시작합니다(배포판/설치 방식에 따라 서비스명이 다를 수 있습니다).
# systemd 기반(예시) - 환경에 맞게 사용
# sudo systemctl restart postgresql
# sudo systemctl restart postgresql-16
# sudo systemctl restart postgresql@16-main
# 상태 확인
# sudo systemctl status postgresql
3단계: 영향 서비스 설정 파일 수정
PostgreSQL 포트를 변경하면, DB에 접속하는 서비스 설정에도 동일한 포트가 반영되어야 합니다.
3-1) CDR_SERVICE_UPLOAD / CDR_SERVICE_API: cdrbroker.properties
설정 파일 경로: E:\softcamp\sanitrans\sanitrans\config\cdrbroker.properties
postgresql.port가 포트 설정입니다.
postgresql.port가 존재하면 값만 변경postgresql.port가 없으면 신규로 추가 후 변경한 포트를 입력
예시:
# PostgreSQL 포트 설정
postgresql.port=15432
3-2) CDR_WEBCONSOLE: WebConsoleApi.properties
설정 파일 경로: E:\softcamp\sanitrans\sanitrans\config\WebConsoleApi.properties
dbserver.port가 포트 설정입니다.
dbserver.port가 존재하면 값만 변경dbserver.port가 없으면 신규로 추가 후 변경한 포트를 입력
예시:
# PostgreSQL 포트 설정
dbserver.port=15432
4단계: 영향 서비스 재시작
설정 파일 저장 후 다음 순서대로 서비스를 재시작합니다:
- Apache Tomcat 10.1 CDR_SERVICE_UPLOAD
- Apache Tomcat 10.1 CDR_SERVICE_API
- Apache Tomcat 9.0 CDR_WEBCONSOLE
Windows 서비스 재시작 방법
# PowerShell 관리자 권한으로 실행
Restart-Service "Apache Tomcat 10.1 CDR_SERVICE_UPLOAD"
Restart-Service "Apache Tomcat 10.1 CDR_SERVICE_API"
Restart-Service "Apache Tomcat 9.0 CDR_WEBCONSOLE"
또는 Windows 서비스 관리자(services.msc)에서 순차적으로 재시작합니다.
설정 검증
정상 동작 확인
- 모든 서비스가 정상적으로 시작되었는지 확인
- 무해화 테스트 수행
- 모니터링 로그 확인
포트 리스닝 확인(선택)
# 변경한 포트(예: 15432) 리스닝 여부 확인
netstat -ano | findstr :15432
주의 사항
설정이 반영되지 않았을 때의 증상(중요)
PostgreSQL 포트를 변경했는데 서비스 설정 파일(cdrbroker.properties, WebConsoleApi.properties)에 포트가 반영되지 않으면,
다음과 같은 DB 연결 실패 로그가 발생할 수 있습니다.
로그 확인 경로: E:\log\cdrApiService\cdrApiService.log
에러 로그 예시:
2026-02-11 14:46:47.252 ERROR [ main] com.zaxxer.hikari.pool.HikariPool : HikariPool-1 - Exception during pool initialization.
org.postgresql.util.PSQLException: Connection to 127.0.0.1:5432 refused. Check that the hostname and port are correct and that the postmaster is accepting TCP/IP connections.
원인:
- PostgreSQL은 변경된 포트로 동작 중인데
- 영향 서비스가 여전히 기본 포트
5432로 접속을 시도하여 연결이 거부됨
해결 방법:
cdrbroker.properties의postgresql.port가 변경된 포트로 설정되었는지 확인WebConsoleApi.properties의dbserver.port가 변경된 포트로 설정되었는지 확인- 영향 서비스(UPLOAD → API → WEBCONSOLE) 순서로 재시작
참고 사항
- 포트 변경 작업은 시스템 부하가 적은 시간대에 수행 권장