DB

[PostgreSQL] PostgreSQL 12 설치 후 Job for postgresql-12.service failed because the control process exited with error code. 에러 해결하기

메바동 2022. 9. 8. 10:48
728x90

회사에서 DB 백업 관련 테스트가 필요해 centOS 7을 설치 후 rpm을 사용하여 PostgreSQL 12를 설치하였다.

 

 

하지만 psql 명령어를 실행하니 연결할 수 없다고 한다.

DB가 꺼진 것 같아 systemctl start postgresql-12.service를 입력하니

 

Job for postgresql-12.service failed because the control process exited with error code. See "systemctl status postgresql-12.service" and "journalctl -xe" for details.

 

오류코드와 함께 제어 프로세스가 종료되었다고 뜬다.

systemctl status postgresql-12.service와 journalctl -xe로 상세 정보를 확인하라고 하니 확인해 봤다.

 

 

/usr/pgsql-12/bin/postgresql-12-check-db-dir을 하는 중 /var/lib/pgsql/12/data/를 찾을 수 없거나 비어있다고 한다.

 

 

경로를 들어가서 확인해보니 비어있다.

아까 journalctl -xe로 확인했을 때 그 밑에 /usr/pgsql-12/bin/postgresql-12-setup initdb를 사용해서 데이터베이스를 초기화해주라고 나와있다.

 

/usr/pgsql-12/bin/postgresql-12-setup initdb

 

해당 명령어를 수행하니 아까 확인했던 경로에 파일들이 생성되었다.

 

 

이후 PostgreSQL을 실행하니 정상적으로 프로세스가 올라간 것을 확인했다.

 

 

 

결론은 프로세스가 정상적으로 올라가지 않을 경우 systemctl status와 journalctl -xe를 활용하여 이유를 찾아보자.

728x90