PostgreSql을 사용하려고 데이터베이스 관리 도구에 들어갔는데, localhost의 DB 연결이 되지 않는다는 문구가 떴다.
이상하다 싶어 cmd 창에서 psql
명령어를 실행해보았더니 다음과 같은 에러문이 출력되면서 postgreSql이 실행되지 않았다.
에러 문구를 자세히 읽어보니 psql: error: connection to server on socket "/tmp/.s.PGSQL.5432" failed 라고 적힌 것으로 보아 postgresql의 local server가 실행되지 않고 있는 듯 했다.
사실 아직도 잘 모르겠다.
일단 구글링을 통해 알아낸 것은 "/tmp/.s.PGSQL.5432" failed라는 에러가 떴을 때에는 pc 내부 프로세스의 일시적인 충돌로 인한 PostgreSql 서버의 오류 발생으로 인한 에러라고 한다.
이럴 경우에는,
$> brew services stop postgres
$> rm /usr/local/var/postgres/postmaster.pid
$> brew services start postgres
정상 동작한다고 한다.
하지만 내 컴퓨터에서는 안먹히는걸?ㅎ
아무튼 그래서 생각하기에는 컴퓨터(Mac M1) 환경 설정 및 다양한 파일들을 설치하면서 path가 꼬이게 된 것 같았다.
구글 검색을 하면서 나와있는 모든 시도들을 다해봤는데, 정말 하나도 적용되지 않고 계속 같은 메세지만 출력,,,,^^
일단 path가 꼬인 것은 같으니 postgresql을 삭제해주기로 했다.
따라한 방식 >> 이분은 삭제하고 재설치를 하니 정상 실행이 됐다고 하는데 일단 내 컴퓨터에서는 소용 없기는 했다.
$> brew services stop postgresql
$> brew uninstall --force postgresql
$> rm -rf /usr/local/var/postgresql
$> rm -rf .psql_history .psqlrc .psql.local .pgpass .psqlrc.local
$> brew cleanup
$> brew list | grep sql
일단 삭제 후에 postgresql을 재설치했으나 똑같은 오류는 계속 발생했다^^
정말 삭제 후 재설치만 한 열댓번은 한 것 같고, brew upgrade
도 시도해보고 아무튼 구글링해서 찾을 수 있는 것들은 모두 다 시도해본 것 같다.
그러다가 postgresql이 아니라 postgresql@13으로 특정 package를 지정해서 설치하는 방법을 시도해봤는데, 신기하게도 이 방법을 사용하니깐 에러가 발생하지 않고 정상 동작이 되었다!
아무튼 정상 동작이 되었으니 다행이기는 한데 왜 postgresql로 설치하면 에러가 발생하고 postgresql@13으로 지정해서 사용하면 괜찮은지는 아직 잘 모르겠어서 좀 더 알아보기는 해야할 듯 하다.
진행한 방식 👇
$> brew install postgresql@13
$> brew services start postgresql@13
# 정상적으로 실행되었다면 psql 명령어를 입력하여 잘 동작하는지 확인해 볼 것
$> psql
사실 이렇게 postgresql을 설치하고도 psql이라는 명령어가 안뜨는 오류가 발생했었는데,brew install postgresql
로 postgresql을 설치하고 실행은 posgresql@13으로(brew services start postgresql@13
) 하니 괜찮아졌다.
진짜 무슨 연유인지 아직도 모르겠음,,,,
아시는 분이 계시다면 꼭 알려주셨으면 좋겠어요,,,,