2016-12-13 1 views
0

제대로 작동하는 postgres 마스터 - 슬레이브 연구실 설정이 있습니다. 그러나 오늘은 작동을 멈추고 양측 (주인과 노예 쪽) 모두 WAL 발신자와 WAL 수신자 서비스가 실행되고 있음을 확인했습니다. 이 두 서비스가 같은 시스템에서 어떻게 실행되고 있으며이 같은 문제가 양쪽에서 어떻게 발생 했습니까?WAL 양쪽 모두에서 실행중인 발신자와 WAL 수신기

어떤 원인 일 수 있습니까? 어떻게이 설정을 수정할 수 있습니까?

감사 아비

+0

로그 파일을보고, 그들은 당신에게 말해야한다. 두 컴퓨터에서'SELECT pg_is_in_recovery();'를 얻으려면 어떻게해야할까요? –

+0

pg_is_in_recovery는 양쪽에서 모두 true입니다. 나는 이것을 설명 할 수있는 로그에서 아무것도 보지 못했습니다. – user1409708

+0

글쎄, 어떤 컴퓨터와 포트가 walreceiver에 연결되어 있는지 알아 내십시오. 그것은 당신에게 단서를 줄 수 있습니다. 게다가, 재부팅 후에 만 ​​발생할 수 있기 때문에, suvenly slave로 변경된 머신의 로그 엔트리가 있어야만한다. 아마도 "새로운 노예"는 실제로 충돌 사고에서 회복하고 있습니까? –

답변

0

충분한 정보가되지 않기 때문에이, 수정 구슬을 사용하여 응답하는 시도 : 두 서버가 실제로 연결되어 있고 서로 WAL을 읽는 것은이 있어야하는 경우

  • “ 슬레이브에 연결을 알려주는 “ 마스터 ” 서버의 데이터 디렉토리에있는 파일 recovery.conf.

  • 과거 어딘가에서 마스터를 다시 시작하십시오. 로그 파일에서 찾아보십시오.

그런 경우 해결책은 마스터를 중지하고 recovery.conf을 제거하거나 이름을 바꾸고 다시 시작하는 것입니다.

문제가 다른 경우 lsof을 사용하여 WAL 수신기가 연결된 컴퓨터를 확인하고 거기에서부터 진행하십시오.

관련 문제