연구하는 안씨의 기록

[DB/이슈] POSTGRES 비밀번호 까먹었을 때 해결 방법 (재설치X, 비번 변경) 본문

KT AIVLE 8기 AI 트랙 활동

[DB/이슈] POSTGRES 비밀번호 까먹었을 때 해결 방법 (재설치X, 비번 변경)

an씨 2026. 1. 26. 16:51

 

빅프로젝트를 진행하면서, POSTGRES DB를 사용하고자 했다. 조원들과 함께 설치하였으나, 초기에 설정해둔 비밀번호를 까먹어, 삭제 및 재설치를 진행하던 도중 프로세스가 꼬여버려, 비밀번호 변경을 시도하면서 해당 이슈를 정리해 보았다... 다들 초기 세팅 비밀번호를 잘 기록해두도록 하자...

 

1. 문제 개요

PostgreSQL 비번 재설정을 위해 여러 차례 삭제 및 재설치하는 과정에서 다음과 같은 문제가 발생하였다.

  • PostgreSQL 설치 시 설정한 비밀번호로 pgAdmin / Query Tool 접속 불가
  • 동일한 비밀번호를 입력해도 인증 실패 반복

이는 PostgreSQL 서버의 데이터 디렉토리가 완전히 초기화되지 않은 상태에서 재설치가 진행되어, 서버 내부에 저장된 비밀번호와 사용자가 인식하는 비밀번호가 불일치하면서 발생한 문제였다. 


2. 원인 분석

  • PostgreSQL은 data 디렉토리(pg_hba.conf, 사용자 정보, 비밀번호 해시 등)를 기준으로 서버 상태를 유지함
  • 제어판에서 프로그램을 삭제해도 data 디렉토리가 남아 있으면:
    • 기존 사용자(postgres)와 비밀번호가 그대로 유지됨
  • 설치 중 표시된 “비밀번호 설정 창”은 실제로는 기존 클러스터를 재사용한 상태였음
  • 그 결과:
    • 새로 입력한 비밀번호 ≠ 실제 서버 비밀번호
    • 인증 실패 무한 반복 발생

3. 해결 전략 개요

pg_hba.conf 인증 방식을 trust로 임시 변경하여 비밀번호 없이 접속 →postgres 계정 비밀번호 강제 재설정 →인증 방식을 원복(scrm-sha-256)


4. 해결 절차 (단계별 상세)

4.1 PostgreSQL 서비스 중지

  1. PowerShell을 관리자 권한으로 실행
  2. 아래 명령 실행
net stop postgresql-x64-18

4.2 pg_hba.conf 파일 수정 (메모장 사용)

  1. 메모장을 관리자 권한으로 실행
  2. 아래 파일 열기
C:\\Program Files\\PostgreSQL\\18\\data\\pg_hba.conf
  1. 아래 항목을 찾음(맨 하단에 있음)

host    all             all             127.0.0.1/32            scram-sha-256
host    all             all             ::1/128                 scram-sha-256
...
  1. scram-sha-256 거 저어언부다 trust 로 변경하고, 기존 파일은 백업해둘것 스페이스 바 하나라도 틀리면안됨

그리고 파일 저장


4.3 PostgreSQL 서비스 재시작

net start postgresql-x64-18

4.4 psql 접속 (비밀번호 없이)

  1. PostgreSQL 실행 파일 경로로 이동
cd"C:\\Program Files\\PostgreSQL\\18\\bin"
  1. PowerShell에서는 반드시 .\\ 포함하여 실행
.\\psql.exe-U postgres
  1. 아래와 같은 프롬프트가 뜨면 성공
postgres=#

4.5 postgres 비밀번호 재설정

psql 프롬프트에서 아래 명령 실행 ‘~~’ ← 안에 재설정할 비번 입력하고, 세미콜론(;) 반드시 입력

ALTER USER postgres WITH PASSWORD'12345';

성공 시 출력: (하단 출력이 무조건 나오는거 확인하고 꺼야함)

ALTER ROLE

4.6 psql 종료

\\q

4.7 pg_hba.conf 인증 방식 원복

다시 pg_hba.conf 파일 열어서:

⬇️ 아래처럼 원래대로 복구 (기존에 trust로 바꿨던거 다 scram-sha-256으로 바꾼다) (재대로 안바꾸면 서비스 재시작에 문제생김…)

host    all             all             127.0.0.1/32            scram-sha-256
host    all             all             ::1/128                 scram-sha-256

4.8 PostgreSQL 서비스 재시작 (최종)

net stop postgresql-x64-18
netstart postgresql-x64-18

5. 정상 동작 확인

5.1 psql 비밀번호 인증 확인

.\\psql.exe-U postgres
  • 비밀번호 입력 → 12345
  • 성공 시:
postgres=#

5.2 (추가적인 문제) pgAdmin 서버 재등록

비번을 성공적으로 재설정했음에도 불구하고 하단과 같이 데이터베이스 생성 후 쿼리 입력 시 문제가 발생하며 비번 인증을 계속해서 실패하는 문제가 있었음. 아마 삭제 후 재설치로 인해 발생한 문제인 것으로 생각됨.

기존 서버 삭제(remove server) 후 새로운 서버 등록(register(하면 바로 해결됨..

(지금은 개발 초기라 괜찮지만 후기 가면 서버 삭제는 좀 조심히 해야할 수도 있을 것 같습니다)

  • Server 우클릭 → Register → 이름 전 그냥 맘대로 했네요
  • Host: 127.0.0.1
  • Port: 5432
  • Username: postgres
  • Password: 12345
  • Save password: 체크

→ 정상 접속 확인완료, 인텔 서버도 잘 돌아가는 것 확인