Suivre

Qui connaît bien Postgresql et son pg_restore ?

J’ai tenté de migrer mon instance PeerTube aujourd’hui et j’ai calé.

Pour en savoir plus c’est ici :
github.com/Chocobozzz/PeerTube

Repouet recommandé

@wekeys normalement moi.
par exemple, selon le format utilisé pour pg_dump, il faut restaurer avec psql plutôt que pg_restore. t'as un msg d'erreur ?

@hendrix79 c’est dans le ticket github.
J’ai suivi la procédure indicant pg restore. Je vais tenter psql

@wekeys j'ai eu qu'un lien vers le git complet, j'ai pas vu de ticket

@hendrix79 avec psql on me dit que le format est custom et qu’il faut passer par pg_restore

@wekeys ah, c'est chelou. ok pour pg_restore, mais je pige pas qu'il cherche à drop la db (normal), qu'il dise qu'elle existe pas, mais ensuite se prenne une erreur lors de la recréation de trucs.
t'as essayé -d peertube_prod au lieu de -d postgres ?
et de créer la database vide au préalable ?

@hendrix79 créer la db vide au départ oui déjà fait mais pas avec -d peertube_prod
Je vais tester

@hendrix79 nope pas mieux. J’ai 4 erreurs au lieu de 3

@wekeys alors j'essayerais un pg_dump au format sql. j'installe postgres pour voir la bonne commande.

@wekeys pour info, j'ai fais ça :
pg_dump -U jimi test > a.sql
createdb test2
psql -U jimi test2 < a.sql

ce format permet de backuper une database avec un nom, et de restaurer sous un autre nom.

@wekeys je crois voire que t'es pas sur une linux de base, notamment qd je vois que /root est pas accessible. donc y'a des limitations qui m'échappes.
cette façon de faire que je viens de t'envoyer va ptete permettre de passer outre les erreurs que t'as.

@hendrix79 snif j’ai les mêmes erreurs avec ta méthode.
Le soucis vient de tag_name et ses key_id

@wekeys le dump, il contient des infos sensibles ? sinon j'essaye de le restaurer ici pour voir ce qui va pas

@hendrix79 oui sensible car contient login et password d’utilisateurs même si c’est haché. Je suis aux urgence là via téléphone donc je peux pas partager ma base hélas

@hendrix79 mais merci pour ton export en sql lisible. Je vais pouvoir le disséquer et voir les erreurs de doublons (schema public et unique key for name)

@wekeys avec plaisir. je regardais pour créer une instance peertube pour reproduire le problème, mais je pense que je vais pas avoir le courage ce soir :)

@hendrix79 j’ai une db de test pour toi mais je ne peux pas te l’envoyer avant demain de toute façon.
Merci

@wekeys ok, tu me redis demain si ça marche toujours pas

@wekeys ça arrive parce que les bases que tu restaures existent déjà.
tu peux donc soit supprimer toutes les bases indiquées dans le log (mode yolo) soit utiliser un outil graphique type pg_admin pgadmin.org/ qui te permettra de cocher les cases pour la restauration (drop before restore etc...) sans avoir à te farcir les options en ligne de commande...

@Chakiral @hendrix79 j’ai trouvé en lisant le fichier .sql non compressé :
Dans les tag_name sensés être uniques, j’ai deux fois autocensure… alors j’en ai pris un que j’ai renommé en autocensures

On ne m’en voudras pas.

@wekeys @Chakiral
en effet. ptete ta base avait un pain et un truc a réussi à se créer en double. j'ai jamais vu ça en PGSQL, mais j'ai vu avec d'autres SGBD

@hendrix79 @Chakiral c’est une database qui date de la beta de PeerTube ! Alors forcément.

@wekeys @hendrix79 sûrement une migration foirée lors des montées de version...

@Chakiral @hendrix79 certainement un champ qui n’était pas unique qui le devient pour éviter les doublons. Mais si lors de l’update il y a des doublons il continue en YOLO et n’effectue pas de réparation.

@wekeys je connais pas bien mais je peux essayer de filer un coup de main

@gegeweb oui justement.
Le problème vient que ma base date des premières beta de PeerTube que j’ai upgradé au fur et à mesure des versions.
J’ai avancé sur mon problème grâce à @hendrix79
Voici l’issue sur Github si tu es curieux.
github.com/Chocobozzz/PeerTube

Inscrivez-vous pour prendre part à la conversation
Framapiaf

Le réseau social de l'avenir : Pas d'annonces, pas de surveillance institutionnelle, conception éthique et décentralisation ! Possédez vos données avec Mastodon !