QNAP [Résolu] MàJ 4.4.1 - Backup PostgreSQL non effectué

marcuss

Nouveau membre
23 Novembre 2018
4
0
1
Bonjour à tous,

Suite à la mise à jour vers la 4.4.1, ma base de données PostgreSQL 9.3 n'est plus accessible.
Je me retrouve avec une nouvelle base de données vierge de PostgresSQL 11.4.
Je sais, je sais, j'aurai du lire avec plus d'attention la release note mais voilà le mal est fait.
Je cherche donc un moyen de récupérer ma base de donnée 9.3 qui semble se trouver dans /share/CACHEDEV1_DATA/.qpkg/PostgreSQL/postgresDB.bak/
Mes tentatives de copier l'intégralité de ce dossier dans un container Docker PostgreSQL 9.3 n'ont rien donné donc je me retourne vers vous pour savoir s'il y a eu des personnes dans mon cas qui ont réussi à récupérer leur base de donnée.

Merci à tous
 
c'est écris dans le changelog du 4.4.1 il faut d'abord sauvegarder la base postgreSQL

il doit surement exister des outils de migration
 
Bonjour à tous,

Je reviens vers vous car j'ai trouvé une solution à partir de ce tuto:
http://dsi-cen.org/restaurer-une-base-de-donnee-postgresql-depuis-une-sauvegarde-de-fichiers/

Les manipulations que j'ai effectué:

# Copie du dossier contenant la base de donnée vers le dossier Public
cp -r /share/CACHEDEV1_DATA/.qpkg/PostgreSQL/postgresDB/ /share/Public/dump_mydb

# Créer un container Docker de PostgreSQL 9.3 avec un volume/dossier partagé 'Public/docker_mydb' pointant vers '/var/lib/postgresql/data' à la création du container

# Lancer le container puis l'arrêter

# Copier le fichier postmaster.opts qui se trouve dans le dossier 'Public/docker_mydb' vers le dossier 'Public/dump_mydb'
# afin d'avoir '/usr/lib/postgresql/9.3/bin/postgres' au lieu de '/share/CACHEDEV1_DATA/.qpkg/PostgreSQL/bin/postgres "-D" "/share/CACHEDEV1_DATA/.qpkg/PostgreSQL/postgresDB"'

# Supprimer le dossier 'Public/docker_mydb', puis renommer le dossier 'Public/dump_mydb' en 'Public/docker_mydb'

# Relancer le container, puis ouvrir une commande bash (l’icône >_ située entre "redémarrer" et "supprimer")
# taper la commande dans le popup
/bin/bash

# Faire les commandes suivantes pour effectuer le backup des bases de données
su postgres
psql -l # lister les bases disponibles ainsi que leurs attributs

pg_dump nom_bdd > /var/lib/postgresql/data/database.sql # dump en fichier texte .sql

Voilà vous avez le backup de votre base de données.
Pour ma part je n'avais que 2 bases de données à récupérer, vous pouvez utiliser pg_dumpall pour récupérer toutes vos bases en une seule commande.
 
Bravo marcus.

Dès que t'as un problème n'hésites pas à revenir vers nous ... surtout si tu as la solution :lol:

Ok. Je sors :oops: