Nice programing

Mac OSX에서 Postgres DB가 시작되지 않음 : 오류 메시지 : Unix 도메인 소켓 연결

nicepro 2020. 12. 2. 21:56
반응형

Mac OSX에서 Postgres DB가 시작되지 않음 : 오류 메시지 : Unix 도메인 소켓 연결


Postgresql을 설치 한 다음 로컬 Mac OSX Mountain Lion에서 여러 레일 앱을 실행하고 데이터베이스 등을 만들었습니다. 오늘 잠시 후 pgAdminIII를 시작하고 데이터베이스 서버를 시작하려고하면이 오류가 발생했습니다.

여기에 이미지 설명 입력

빠른 Google 이이 게시물을 보여주었습니다 . 더 많은 브라우징은 이것의 근본 원인이 될 수있는 일종의 postmaster.pid 파일이 주변에있을 수 있다는 사실을 지적했습니다. 내가 삭제하면 괜찮을 것입니다.

그러나 컴퓨터에서 항목을 삭제하기 전에 더 많은 문제가 발생하지 않는 체계적인 방식으로 디버깅하는지 확인하고 싶었습니다.

파일을 삭제하기 전에 읽은 곳에서 다음 명령을 실행해야합니다.

  ps auxw | grep post

결과가 없으면 파일을 삭제해도됩니다. 그렇지 않으면 아닙니다. 글쎄, 나는 그 명령의 결과를 얻었다.

  AM               476   0.0  0.0  2423356    184 s000  R+    9:28pm   0:00.00 grep post

그래서 지금 당연히 나는 완전히 혼란스러워했습니다.

그래서 내가 무엇을해야하니?

다음은 내 postgres 서버 오류 로그의 일부입니다.

 FATAL:  lock file "postmaster.pid" already exists
 HINT:  Is another postmaster (PID 171) running in data directory "/usr/local/var/postgres"?

Postgresql이 여전히 실행되고 있지 않지만 여전히 동일한 오류가 발생하고 아무것도 변경되지 않았습니다. 너무 닭이 너무 많아서 확인하지 않고 물건을 삭제합니다.

전문가 중 일부는 멍청한 사람을 안내해 주시겠습니까?

감사


오늘 Mac Sierra에서 같은 문제가 발생했습니다. Mac Sierra postmaster.pid에서 /Users/<user_name>/Library/Application Support/Postgres/var-9.6. 삭제 postmaster.pid하면 문제가 해결됩니다.


이는 데이터베이스가 올바르게 종료되지 않은 경우 발생할 수 있습니다.

이를 수정하려면 postmaster.pid 파일을 삭제하십시오.

 rm /usr/local/var/postgres/postmaster.pid

또는 백업 :

 mv /usr/local/var/postgres/postmaster.pid /usr/local/var/postgres/postmaster.pid.backup

이제 데이터베이스가 작동합니다.

내가 취한 단계는 다음과 같습니다.

  1. 컴퓨터를 재부팅했습니다.
  2. 나는 터미널을 열고 달렸다 cd /
  3. 그런 다음 ls -la
  4. 내가 갈 수 있는지 확인 MackintoshHD/usr/local/var/postgres
  5. 그런 다음 ls -la
  6. 여기서 postmaster.pid 파일을 보았습니다.
  7. 이 명령 cp postmaster.pid ~/Desktop실행 하여 파일을 데스크탑에 복사했는데 파일을 삭제할 때이 작업을 수행하고 싶습니다. 뭔가 잘못되면 다시 되돌릴 수 있습니다
  8. 그런 다음이 명령을 실행하여 postgres 디렉토리에서 파일을 제거했습니다. rm -r postmaster.pid
  9. 내 pgadmin3 gui로 가서 해고했습니다. 그리고 Voila는 작동했습니다. :)

도움을 주신 @Craig Ringer에게 감사드립니다.


Postgres.app을 사용하고 있으며 아래가 저에게 효과적이었습니다.

"justin"을 사용하지 않고 Postgres 폴더를 미리 찾아서 아래 터미널에 명령을 입력했습니다.

$declare -x PGDATA="/Users/justin/Library/Application Support/Postgres/var-9.4"

$pg_ctl restart -m immediate

Justin이 자신의 게시물에서 설명했듯이 그 이후의 결과는 다음과 같습니다.

서버 종료 대기 중 ……………………………………………………… 실패 pg_ctl : 서버가 종료되지 않음

명령을 다시 입력 한 후 :

$pg_ctl restart -m immediate

작동했고 다음 메시지를 받았습니다.

pg_ctl : 이전 서버 프로세스 (PID : 373)가 어쨌든 서버를 시작하는 것 같습니다. 서버 시작 LOG : 데이터베이스 시스템이 중단되었습니다. 2015-07-28 18:15:26 PDT LOG : 데이터베이스 시스템이 제대로 종료되지 않았습니다. 자동 복구 진행 중 로그 : 0 / 4F0F7A8에서 길이가 0 인 레코드 로그 : 다시 실행이 필요하지 않습니다. 로그 : 데이터베이스 시스템이 연결을 수락 할 준비가되었습니다. 로그 : autovacuum 실행기가 시작됨

출처

참고 URL : https://stackoverflow.com/questions/17800249/postgres-db-not-starting-on-mac-osx-error-says-connections-on-unix-domain-sock

반응형