현재 RDBMS 중 Open SourceDB 1등인 DB는 PostgreSQL이다.
DB engins Link
위 링크를 보면 아시다시피 당연 1등인 오라클, MySQL, MSSQL밑에 OpenDB인 PSQL이라 운영시에도 많이 마주치고 경험을 할 수 밖에 없는 DB일것이다.
DBA로서 일을 하다가 새로운 업무를 받았다.
근데 이게 뭐람...
백업정책이 한개도 없었다!...
나는 신입나부랭이인데...어찌해야하나,,,
어찌저찌 엔지니어를 붙잡고 물어보기도 하고 개발DB에서 돌려보면서 현 벨로그 전꺼를 보게되면 스크립트 짠것을 볼 수 있다!
pg_basebackup을 하면서 에러가 난 상황에 대하여 공유를 하려고 한다.
pg_basebackup은 wal_sender라는 프로세스가 파일들을 복사시켜주는 것이다.
그런데 정책을 세우는 도중 1개의 DB에서 wal_sender의 개수가 0인것이다...
에러내용 : pg_basebackup : could not connect to server : FATAL : number of requested standby connections exceeds max_wal_senders(currently 0)
postgresql.conf
글쓴이는 둘다 0개에서 10개로 늘려주었다.
이 에러는 pg_basebackup말고 psql실행때도 자주 나온다한다(구글링 열심히해봄..ㅠ)
psql: could not connect to server: No such file or directory
Is the server running locally and accepting
connections on Unix domain socket "/var/run/postgresql/.s.PGSQL.5432"?
저 위치에 소켓파일인 .s.PGSQL.5432가 없다는 것이고 그거때문에 연결이 안된다라는 것.
.s.PGSQL.5432를 찾는 방법은 netstat -nlp | grep {DBPort}
ex) pg_basebackup -U user -p PORT -h /var/run/postgresql/ ~~~~
이렇게 하게되면 그 폴더에 있는 소켓파일을 읽고 DB에 접속해서 해결이 된다.
다른 트러블슈팅 사례가 있다면 또 써야겠다! 이상 끝!