Files
aggios.app/scripts/README.md
2025-12-17 13:36:23 -03:00

138 lines
3.0 KiB
Markdown

# Scripts de Backup e Manutencao Aggios
## Estrutura
```
scripts/
├── backup-db.ps1 # Backup manual do banco
├── restore-db.ps1 # Restaurar backup mais recente
├── rebuild-safe.ps1 # Rebuild seguro (com backup automatico)
├── setup-backup-agendado.ps1 # Configurar backup automatico a cada 6h
└── reset-superadmin-password.ps1 # Gerar nova senha segura para SUPERADMIN
```
## Como Usar
### 1. Configurar Backup Automatico (EXECUTE PRIMEIRO!)
Execute como **Administrador**:
```powershell
cd g:\Projetos\aggios-app\scripts
.\setup-backup-agendado.ps1
```
Isso criara uma tarefa no Windows que fara backup **automaticamente a cada 6 horas** (00:00, 06:00, 12:00, 18:00).
### 2. Backup Manual
```powershell
cd g:\Projetos\aggios-app\scripts
.\backup-db.ps1
```
Cria um backup em `g:\Projetos\aggios-app\backups\aggios_backup_YYYY-MM-DD_HH-mm-ss.sql`
### 3. Rebuild Seguro (SEMPRE USE ESTE!)
```powershell
cd g:\Projetos\aggios-app\scripts
.\rebuild-safe.ps1
```
**O que faz:**
1. Backup automatico antes de tudo
2. Para containers (SEM `-v`)
3. Reconstroi imagens
4. Sobe tudo novamente
**DADOS NUNCA SAO APAGADOS!**
### 4. Restaurar Backup
Se algo der errado:
```powershell
cd g:\Projetos\aggios-app\scripts
.\restore-db.ps1
```
Restaura o backup mais recente (com confirmacao).
### 5. Resetar Senha do SUPERADMIN
Para gerar uma nova senha super segura:
```powershell
cd g:\Projetos\aggios-app\scripts
.\reset-superadmin-password.ps1
```
**Isso ira:**
- Gerar senha aleatoria de 28 caracteres
- Salvar em arquivo protegido (backup)
- Atualizar no banco de dados
- Exibir a nova senha na tela
**ANOTE A SENHA EXIBIDA!**
## Regras de Ouro
### PODE USAR:
-`.\rebuild-safe.ps1` - Sempre seguro
-`docker-compose down` (sem -v)
-`docker-compose up -d --build`
-`.\backup-db.ps1` - Backup manual
### NUNCA USE:
-`docker-compose down -v` - **APAGA TUDO!**
-`docker volume rm` - Apaga dados permanentemente
## Localizacao dos Backups
- **Pasta:** `g:\Projetos\aggios-app\backups/`
- **Retencao:** Ultimos 10 backups
- **Frequencia automatica:** A cada 6 horas
- **Formato:** `aggios_backup_2025-12-13_19-56-18.sql`
## Verificar Backup Agendado
1. Abra o **Agendador de Tarefas** do Windows
2. Procure por: **"Aggios - Backup Automatico DB"**
3. Verifique historico de execucoes
## Desabilitar Backup Agendado
Execute como Administrador:
```powershell
Unregister-ScheduledTask -TaskName "Aggios - Backup Automatico DB" -Confirm:$false
```
## Em Caso de Emergencia
Se perder dados acidentalmente:
1. **PARE TUDO IMEDIATAMENTE:**
```powershell
docker-compose down
```
2. **Restaure o backup:**
```powershell
cd g:\Projetos\aggios-app\scripts
.\restore-db.ps1
```
3. **Suba os containers:**
```powershell
docker-compose up -d
```
## Historico de Mudancas
- **2025-12-13:** Criacao inicial dos scripts de protecao
- Backup automatico a cada 6h
- Scripts seguros de rebuild
- Restauracao facilitada