Data/PostgreSQL3 [PostgreSQL] 데이터베이스 백업 (pg_dump, pg_dumpall, Filesystem 백업) 데이터베이스를 사용할 때 장애 발생 시 대응을 위하여 여유분을 별도로 저장해 두거나, 다른 서버로 이관을 할 때 백업을 많이 이용한다. 이번 글은 PostgreSQL에서의 백업에 대하여 알아볼 것이다. Psql(PostgreSQL)의 가장 손쉬운 백업 방식으로는 3가지가 있다.※ pg_backrest나 pg_basebackup 및 PITR과 같은 방식도 존재하고 설정이 복잡해서 이번 글에서는 생략 해당 3가지 방식으로는 pg_dump와 pg_dumpall 그리고 Filesystem 백업이 있다. 순서대로 해당 방식들이 가지는 특징과 장단점에 대하여 알아볼 것이다.1. pg_dumppg_dump는 단일 데이터베이스 위주의 백업을 위해 사용되는 툴이다. 데이터베이스가 실행 중인 상태에서도 백업 가능하.. 2024. 11. 18. [PostgreSQL] Publication, Replication_slot 조회 및 삭제 PostgreSQL에서 데이터베이스 복제를 할 때 사용되는 Publication과 Replication_slot의 조회와 삭제와 관련된 명령어이다. 1. Publication 조회 및 삭제 -- psql -- 모든 publication 조회 select * from pg_publication; -- publication과 관련된 모든 테이블 조회 select * from pg_publication_tables; -- publication 삭제 drop publication ; 2. Replication_slot 조회 및 삭제 -- psql -- 모든 replication_slot 조회 select * from pg_replication_slots; -- replication_slot 삭제 select p.. 2024. 4. 23. [PostgreSQL] Replication Slot 과거에는 복제 슬롯(Replication Slot)이 없을 때, 스트리밍 복제에서 원본(Master)은 복제(Slave)의 상태를 알지 못하였고, 이에 따라 WAL 세그먼트를 관리하는 것은 어려운 일이었다. 그로 인하여 아래와 같은 문제점이 발생하게 되었다. [예시] 마스터 서버에서 큰 트랜잭션이 일어나고 있고, 복제 서버가 정지 상태(시스템 패키지 업그레이드, 하드웨어 업그레이드 등의 이유) 일 때, 해당 복제 서버의 상태와 관계없이 마스터 서버에서는 트랜잭션을 마치고 체크포인트를 통과하면 트랜잭션 로그(WAL 세그먼트)를 제거를 하게 되는데, 정지된 복제 서버에서는, 복제본의 유지 관리가 중단되었기 때문에, 복제 지연이 크게 발생하여 재기동을 할 때, 아래 에러가 발생된다. LOG: started s.. 2024. 2. 16. 이전 1 다음