---
title: Ghid de actualizare
icon: arrow-up-right-dots
---

## Linii directoare generale

**Faceți întotdeauna o copie de rezervă a bazei de date înainte de a începe procesul de actualizare** rulând:

```bash
docker exec -it {db_container_name_or_id} pg_dumpall -U {postgres_user} > databases_backup.sql
```

Pentru a restaura din copia de rezervă:

```bash
cat databases_backup.sql | docker exec -i {db_container_name_or_id} psql -U {postgres_user}
```

Dacă utilizați Docker Compose, urmați acești pași:

1. Opriți Twenty: `docker compose down`
2. Modificați valoarea `TAG` în fișierul `.env` de lângă `docker-compose.yml`
3. Porniți Twenty: `docker compose up -d`

Serverul rulează automat toate migrațiile de actualizare necesare la pornire. Nu este necesară nicio comandă manuală.

## Actualizări între versiuni (v1.22+)

Începând cu **v1.22**, Twenty acceptă actualizări între versiuni. Puteți trece direct de la orice versiune acceptată la cea mai recentă versiune, fără a parcurge fiecare versiune intermediară.

De exemplu, actualizarea de la v1.22 direct la v2.0 este pe deplin acceptată.

## Actualizare la v2.5+ — înveliș de criptare pentru date în repaus

Începând cu **v2.5**, Twenty stochează secretele aflate în repaus (tokenuri OAuth, variabile de aplicație, chei private de semnare, valori de configurare sensibile, secrete TOTP) într-un înveliș versionat `enc:v2:` criptat cu `ENCRYPTION_KEY` (sau `APP_SECRET` dacă `ENCRYPTION_KEY` nu este setată).

Prima pornire în v2.5 rulează comenzi lente de upgrade care populează retroactiv rândurile existente în noul înveliș. Aceste comenzi sunt idempotente — întreruperea și repornirea serverului reiau procesul de unde a rămas — dar pot dura ceva timp pe baze de date mari. Poți monitoriza progresul cu `upgrade:status`.

Ar trebui să setezi un `ENCRYPTION_KEY` dedicat **înainte** de upgrade-ul la v2.5, astfel încât procesul de populare retroactivă să scrie rândurile sub acesta încă de la început. Schimbarea cheilor după popularea retroactivă necesită o [rotație](/l/ro/developers/self-host/capabilities/key-rotation).

## Rotația secretelor și a cheilor de semnare

Pentru sarcini operaționale de zi cu zi, precum rotația `ENCRYPTION_KEY`, rotația cheii de semnare JWT sau revocarea unei chei de semnare compromise, consultă [Ghidul de rotație a cheilor](/l/ro/developers/self-host/capabilities/key-rotation).

## Verificarea stării actualizării

Comanda `upgrade:status` vă permite să inspectați starea curentă a instanței și a migrațiilor spațiilor de lucru. Este utilă pentru depanarea problemelor de actualizare sau când trimiteți o solicitare de asistență.

Rulați comanda din containerul serverului:

```bash
docker exec -it {server_container_name_or_id} yarn command:prod upgrade:status
```

Exemplu de rezultat:

```sh
APP_VERSION: v1.23.0

Instance
    Inferred version: 1.23.0
    Latest command:   1.23.0_DropWorkspaceVersionColumnFastInstanceCommand_1785000000000
    Status:           Up to date
    Executed by:      v1.23.0
    At:               2026-04-16T11:43:58.823Z

Workspace
  Apple (20202020-1c25-4d02-bf25-6aeccf7ea419)
      Inferred version: 1.23.0
      Latest command:   1.23.0_UpdateGlobalObjectContextCommandMenuItemsCommand_1780000005000
      Status:           Up to date
      Executed by:      v1.23.0
      At:               2026-04-16T11:44:09.361Z

Summary
    Instance: Up to date
    Workspaces: 1 up to date, 0 behind, 0 failed (1 total)
```

### Opțiuni

| Opțiune                   | Descriere                                                                               |
| ------------------------- | --------------------------------------------------------------------------------------- |
| `-w, --workspace-id <id>` | Filtrați după un spațiu de lucru specific. Poate fi specificată de mai multe ori.       |
| `-f, --failed-only`       | Ascunde spațiile de lucru la zi, afișând doar pe cele rămase în urmă și pe cele eșuate. |

## Depanare

Dacă actualizarea eșuează pe unele spații de lucru, serverul nu va trece de pasul care a eșuat. Repornirea serverului (`docker compose up -d`) va reîncerca actualizarea de unde a rămas.

Pentru a identifica rapid problemele, rulați:

```bash
docker exec -it {server_container_name_or_id} yarn command:prod upgrade:status --failed-only
```

Aceasta afișează doar spațiile de lucru care sunt rămase în urmă sau au eșuat, împreună cu mesajul de eroare pentru fiecare eșec.

## Înainte de v1.22

Dacă instanța dvs. este mai veche decât v1.22, trebuie să actualizați incremental prin fiecare versiune majoră etichetată (de la v1.6 la v1.7, apoi de la v1.7 la v1.8 și așa mai departe) până ajungeți la v1.22. De acolo, puteți sări direct la cea mai recentă versiune.
