Vous n'êtes pas identifié(e).
Bonjour,
Je pensais maitriser un tant soit peu la restauration d'une bdd d'une instance vers une autre et je me trompais. (C'est dingue on a beau écrire des protocoles bien documentés qui fonctionnent lorsqu'on les écrit, et ben non toujours un truc qui m...e);
Bref...
J'ai sauvegardé les globales à plat et une base de données (pg_dump) du serveur sous PostgreSQL11 (méthode Dalibo).
J'ai installé un serveur PostgreSQL 13 avec l'installateur Entreprisedb.
Les deux instances sont sous windows server 2012.
Après une première installation laborieuse de la nouvelle instance avec un souci de mot de passe pour l'utilisateur postgres (pas compris pourquoi mais c'est reglé après une reinstallation), tout est rentré dans l'ordre avec une connexion via pgadmin4 utilisant l'utilisateur postgres.
Je restaure les globales sauvegardées avec
psql -h localhost -p 5413 -U postgres -f c:\...
la restauration se passe sans message d'erreur.
Depuis, plus possible de se connecter depuis pgadmin4 : problème de mot de passe avec postgres. Qu'à cela ne tienne, j'essaie d'utiliser un compte restauré : impossible problème de mot de passe également.
- J'ose espérer que la sauvegarde et la restauration ds globales se fait avec les mots de passe ??? D'ailleurs je ne vois pas pourquoi postgres ne fonctionne plus alors que j'ai vérifié le mot de passe sur le serveur initial qui est le même sur la nouvelle instance.
Plus étrange, je peux me connecter en psql à avec postgres après restauration des globales. En revanche, si j'essaie de me connecter avec un autre utilisateur
psql - h localhost -U autre
erreur =
"database "autre" n'existe pas
Plait-il ? -U c'est pour USER monsieur psql...
J'ai bien un dumpall de l'instance, complète donc, mais je souhaite éviter cela pour le moment.
Avez-vous quelques remarques, conseils ou expériences qui me permettraient de comprendre et résoudre ?
Merci,
Cette semaine est un cauchemar.
Dernière modification par Leehan (15/01/2021 14:52:30)
Hors ligne
Depuis, plus possible de se connecter depuis pgadmin4 : problème de mot de passe avec postgres. Qu'à cela ne tienne, j'essaie d'utiliser un compte restauré : impossible problème de mot de passe également.
- J'ose espérer que la sauvegarde et la restauration ds globales se fait avec les mots de passe ??? D'ailleurs je ne vois pas pourquoi postgres ne fonctionne plus alors que j'ai vérifié le mot de passe sur le serveur initial qui est le même sur la nouvelle instance.
Vous n'indiquez pas le système d'exploitation. Plus problématique, vous n'indiquez pas le véritable message d'erreur. Du coup, ça nous force de jouer aux devinettes. Il y a fort à parier que la valeur du paramètre password_encryption des deux serveurs soit différente. Ce serait le premier point à vérifier. S'il y a toujours un problème, merci d'indiquer le message d'erreur, histoire qu'on ne perde pas trop de temps.
"database "autre" n'existe pas
Normal, vous n'avez pas indiqué le nom de la base. À parrie du moment où vous n'indiquez pas le nom de la base à la commande psql, il la déduit à partir du nom de l'utilisateur PostgreSQL utilisé pour se connecter. Il est possible que ça ne soit pas ça, vu que la commande indiquée est évidemment fausse... il manque le h entre - et localhost...
Guillaume.
Hors ligne
Désolé.
J'ai complété le message intial avec le système d'exploitation Windows : Server 2012.
il manque le h entre - et localhost
juste une faute de frappe, c'est corrigé dans le message initial itou.
Je vais tâcher de retrouver le message d'erreur qui stipulait la nécessité d'un mot de passe. Car j'ai dû passer à autre chose entre -temps, mais je vais y revenir.
Merci
Dernière modification par Leehan (15/01/2021 15:05:21)
Hors ligne
le message d'erreur est
psql: erreur : FATAL : authentification par mot de passe échouée pour l'utilisateur postgres
Et ce après la restauration des globales.
la valeur du paramètre password_encryption des deux serveurs soit différente
sur le 11 : md5
sur le 13 : scram-sha-256
J'ai benoitement, changer cette dernière en md5, relancé le service postgres13 et tenter la connexion : échec psql comme pgadmin. Je cherche donc dans cette direction.
Merci
Hors ligne
Et quel est le contenu du fichier pg_hba.conf du nouveau serveur ?
Guillaume.
Hors ligne
du changement à venir également coté method j'imagine ?
# TYPE DATABASE USER ADDRESS METHOD
# "local" is for Unix domain socket connections only
local all all scram-sha-256
# IPv4 local connections:
host all all 127.0.0.1/32 scram-sha-256
# IPv6 local connections:
host all all ::1/128 scram-sha-256
# Allow replication connections from localhost, by a user with the
# replication privilege.
local replication all scram-sha-256
host replication all 127.0.0.1/32 scram-sha-256
host replication all ::1/128 scram-sha-256
Hors ligne
En fait, avec la version 9.5, vos mots de passe ont eu droit à un hachage MD5. Pour ça, vous devez utiliser la méthode MD5 dans votre pg_hba.conf. Après avoir modifié ce fichier, vous devez simplement recharger la configuration.
Guillaume.
Hors ligne
vous devez utiliser la méthode MD5 dans votre pg_hba.conf
le changement de méthode en md5 a permis de me connecter après la restauration des globales (et même pas besoin de sans recharger la config même).
Merci
Hors ligne