--
Version imprimable
--
Bonjour,
Merci de ne pas tenir compte de la copie d'écran ci-dessus que je n'ai pas réussi à supprimer.
Je souhaiterai effectuer une restauration de base de données.C'est un script (postgresql ou pgadmin je ne sais pas) de type dump de 3 millions de lignes (!) qui a été généré via une base en production...et m'a été fourni.
C'est un fichier sql qui se trouvait dans un dossier compressé . (Dossier que j'ai décompressé du coup...).
J'ai vu dans la FAQ qu'il fallait faire:
Mais je ne comprend pas trop pour le chemin d'accés... Il faudrait que je retrouve le répertoire où est créé ma base dans pgAdmin...Comment je connais cela?Code:
1
2 pg_restore -i -h localhost -p 5432 -U postgres -d "MADATABASE" -v "/home/hpalpha/pg/save0001.bak"
Et le logiciel se débrouillera avec ce fichier bak nouvellement créé?
Finalement, j'ai regardé le site officiel pgadmin:
J'ai fait clic-droit sur ma base vide dans pgadmin4 , format : custom or tar , je clique sur filename pour chercher mon fichier de dump de la sauvegarde (au format sql) ,je clique sur restore, et puis cela n'a pas fonctionné!J'ai un message me disant d'utiliser psql...(voir copie d'écran)Pièce jointe 626838Pièce jointe 626838
Ensuite ce que j'ai essayé aussi :
J'ai créé une base vide 'dotations' dans pgadmin4 , je fais clic-droit sur ma base (interface pgadmin) pour avoir l'invite de commande psql , je navigue dans l'invite de commande psql pour me mettre dans le répertoire de mon script de dump (format sql) , puis j'écris:
Pièce jointe 626901
Lorsque je presse entrée il ne se passe rien, pas de messages d'erreur...
De plus maintenant , dans pgAdmin je ne vois que la base postgres , ma base dotations n'apparait pas , meme en cliquant refresh cela ne change rien...Pourtant lorsque j'execute le sql shell ( psql ) j'arrive bien à avoir l'invite de commande de ma base:
D'ailleurs je pense qu'il vaut mieux exécuter les commandes depuis le sql shell (psql) que depuis le sql shell de pgAdmin4? Votre avis?Code:
1
2dotations-#
Merci d'avance.
J'ai avancé...Je viens de me rendre compte que psql ne reconnaissant pas les instructions.
J'ai rajouté la variable d'environnement windows et executé depuis cmd:
Mon cmd répond bien , il m'affiche des messages du script du style SET , CREATE TABLE , ALTER TABLE etc...Code:
1
2psql -U postgres --set ON_ERROR_STOP=on dotat < dump_edod_20220511.sql
Maintenant je suis confronté au message:
Je pensai commenter les lignes :Code:
1
2 ERREUR: les tables avec WITH OIDS ne sont pas supportees
Qu'en pensez vous?Code:
1
2
3 SET default_with_oids = true; SET default_with_oids = false;
C'est bon.
Problème résolu :D 8-)