---
title: Queda e Recuperação
slug: knowledge-base-internal/queda-e-recuperacao
createdAt: 2025-07-30T12:25:25.210Z
---

## Queda da instância principal

:::hint{type="info"}
**Atenção: Executar as ações a seguir no nó secundário standby**
:::

Durante a interrupção da instância principal é necessário promover o postgres secundário:

```bash
docker exec -ti postgres pg_ctl promote
```



***

## Recuperação da instância principal

Após a instancia principal se recuperar, é necessário realizar o resyncing da replica para a master principal novamente, e eleger novamente a primária.

:::hint{type="info"}
**Atenção: Executar as ações a seguir no nó primário**
:::

1 - Parar a instancia e remover os dados "antigos", remover os arquivos locais

```bash
cd /opt/apps/simon/docker 
docker compose stop postgres
docker compose run --rm postgres rm -rf /var/lib/postgresql/data/* 
rm -rf  /dados/var/lib/postgresql/data
```

3 - Realizar uma copia inicial do nó secundário:

```bash
docker run --rm --tty -ti \
--add-host "postgres_secondary:192.168.68.27" \
-e POSTGRES_HOST_AUTH_METHOD="scram-sha-256" \
-e POSTGRES_INITDB_ARGS="--auth-host=scram-sha-256" \
-v /dados/var/lib/postgresql/data:/var/lib/postgresql/data --name postgres-init docker.simonops.com/simonops/space-postgres:pg17 \
/bin/sh -c "echo 'Starting backup...' && env PGPASSWORD=repl1c4-us3rs-410p3 pg_basebackup -D /var/lib/postgresql/data -U replicator --progress --host=postgres_secondary --port=5432 --wal-method=stream --no-password && touch /var/lib/postgresql/data/standby.signal && chmod 0700 /var/lib/postgresql/data && chown -R postgres:postgres /var/lib/postgresql/data && echo 'Concluido'"
```

4 - Subir o container e realizar o procedimento de standby signal

```bash
docker exec -ti postgres touch /var/lib/postgresql/data/standby.signal
docker exec -ti postgres psql -U postgres -c "SELECT pg_create_physical_replication_slot('replication_slot');"
```

5 - Promover novamente o nó principal:

```bash
docker exec -ti postgres pg_ctl promote
```

