# Restaurer un backup sur le serveur de staging

## Description générale

Le flux général est le suiest de sélectionner un backup de la prod et de le restaurer sur le cluster PostgreSQL d'un serveur staging.

* Stopper le Serveur de staging
* \[Option] Supprimer la base de données existante
* Restaurer un backup (pg\_dump) sur le cluster PostgreSQL de staging
* Configurer le serveur de staging pour qu'il utilise la bonne base de données
* Redémarrer le serveur de staging

## Description détaillée

#### Stopper le serveur de Staging

* Utilisez les instructions de la page [acceder-a-vos-serveurs](https://docs.muppy.io/guides/odizy/acceder-a-vos-serveurs "mention") pour ouvrir le formulaire du serveur staging.
* Ouvrir l'onglet **Systemd**
* Cliquez sur le bouton **Stop All**
* Vérifier que le **Substate** des services passe à **Dead**

<figure><img src="https://3772830354-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FJQEyyq3uo2ur4VSBiaCB%2Fuploads%2FNz4FvIVe76HjM5HDiymR%2FCleanShot%202023-08-28%20at%2019.14.42%402x.png?alt=media&#x26;token=43481036-ca77-4745-916f-a49b9d8b1a93" alt=""><figcaption><p>Stopper les process Odoo</p></figcaption></figure>

#### Supprimer la base de données existante

Dans l'onglet **Databases** du formulaire du serveur de Staging, cliquer sur le bouton <img src="https://3772830354-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FJQEyyq3uo2ur4VSBiaCB%2Fuploads%2F42rkmrmQA6Cyx7V0IJFI%2FCleanShot%202023-08-28%20at%2019.25.33%402x.png?alt=media&#x26;token=4b75b593-0aa9-43bd-a23b-e8cd71850cb1" alt="" data-size="line"> de la base de données que vous voulez supprimer.

Puis cliquer sur le bouton <img src="https://3772830354-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FJQEyyq3uo2ur4VSBiaCB%2Fuploads%2FTwugqyOfIfnHBRaMCIcp%2FCleanShot%202023-08-28%20at%2019.27.08%402x.png?alt=media&#x26;token=3db64642-a16c-45af-b792-9a89d4f3159a" alt="" data-size="line"> pour vérifier que la suppression a été réalisée.&#x20;

Si la base n'a pas été supprimée, c'est qu'elle est utilisée par un autre programme. Contactez le support Muppy si vous n'arrivez pas à la trouver et le fermer.

<mark style="background-color:orange;">Notez le nom du PostgreSQL Cluster et copier le nom de l'utilisateur PostgreSQL dans le presse papier.</mark>

#### Restaurer un pg\_dump sur le cluster PostgreSQL de staging

Ouvrez la liste des backups de base de données via le menu **Muppy / Databases / Database Backups (pg\_dump)**

Utilisez les filtres pour identifier et ouvrir le formulaire du backup que vous souhaitez restaurer puis cliquez sur le bouton <img src="https://3772830354-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FJQEyyq3uo2ur4VSBiaCB%2Fuploads%2F8f0NusWt3v6tGWbBQAth%2FCleanShot%202023-08-28%20at%2019.36.26%402x.png?alt=media&#x26;token=920229f7-d452-452b-bbbe-51f5cd81bd40" alt="" data-size="line">

<figure><img src="https://3772830354-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FJQEyyq3uo2ur4VSBiaCB%2Fuploads%2FYyN8oJFGGdXgzVNRzPRr%2FCleanShot%202023-08-28%20at%2019.34.08%402x.png?alt=media&#x26;token=f2267c5b-f008-451a-aea4-b9b00ef57766" alt=""><figcaption><p>Formulaire d'un objet pg_dump et bouton Restore</p></figcaption></figure>

Dans le formulaire "Restore PostgreSQL Database" qui s'ouvre, indiquez les valeurs de:

* PostgreSQL Cluster
* Owner (Coller la valeur qui est dans le Presse Papier)
* Database name
  * Si  vous ne mettez rien, le nom d'origine est utilisé.
* Comment (éventuellement)

Puis cliquez sur le bouton <img src="https://3772830354-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FJQEyyq3uo2ur4VSBiaCB%2Fuploads%2Fs3cPiofBP6QunvoWhe12%2FCleanShot%202023-08-28%20at%2019.43.35%402x.png?alt=media&#x26;token=8dc382a1-8479-49ae-bc78-fbcc167a0eea" alt="" data-size="line">.

<figure><img src="https://3772830354-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FJQEyyq3uo2ur4VSBiaCB%2Fuploads%2FxXXpSwhH7w7yNlyj4lB9%2FCleanShot%202023-08-28%20at%2019.40.55%402x.png?alt=media&#x26;token=17adc483-9112-423e-9ff1-e1cf62a1f589" alt=""><figcaption><p>Formulaire Restore PostgreSQL Database</p></figcaption></figure>

#### Configurer le serveur de staging pour qu'il utilise la bonne base de données

Une fois que vous avez reçu la notification de la fin de la restoration, dans l'onglet **Databases** du formulaire du serveur de Staging:

* Cliquez sur le bouton <img src="https://3772830354-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FJQEyyq3uo2ur4VSBiaCB%2Fuploads%2FyESNek1Jkxk7mzMpBGFF%2FCleanShot%202023-08-28%20at%2019.46.54%402x.png?alt=media&#x26;token=81d561de-165d-4a4d-8310-cc5054aef190" alt="" data-size="line"> de la base de données que vous voulez utilisez
* Cliquez sur le bouton <img src="https://3772830354-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FJQEyyq3uo2ur4VSBiaCB%2Fuploads%2FzXJLdutkSMs0XkGslHRh%2FCleanShot%202023-08-28%20at%2019.49.04%402x.png?alt=media&#x26;token=28766435-ff17-459a-8c1f-b7f0aff8cb98" alt="" data-size="line"> s'il apparait.

{% hint style="success" %}
Use the <img src="https://3772830354-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FJQEyyq3uo2ur4VSBiaCB%2Fuploads%2FlwPvHDRZSDBfzEIstwsE%2FCleanShot%202023-08-28%20at%2019.50.49%402x.png?alt=media&#x26;token=9157460b-5f22-4d0e-9009-8a5afaee24ec" alt="" data-size="line"> button to refresh the database list.
{% endhint %}

#### Redémarrer le serveur de Staging

Utilisez le bouton Start All de l'onglet Systemd pour redémarrer le serveur (cf § [#stopper-le-serveur-de-staging](#stopper-le-serveur-de-staging "mention"))
