Impossible de se connecter PostgreSQL pour la base de données distante à l'aide de pgAdmin
J'ai installé PostgreSQL sur mon serveur local (Ubuntu) avec l'IP 192.168.1.10. Maintenant, j'essaye d'accéder à la base de données à partir de mon ordinateur client (Ubuntu) avec IP 192.168.1.11 avec pgAdmin.
Je sais que je dois faire des changements dans postgresql.conf et pg_hba.conf pour autoriser le client à se connecter. Pourriez-vous svp me guider?
- Ne vous obtenez une erreur? si oui, quelle est l'erreur?
- Ce n'est pas vraiment une question de programmation. Si, ajouter une ligne en disant: "accueillir tous les tous les 192.168.1.0/24 md5" dans data/pg_hba.conf
- Quelle est l'erreur que vous obtenez? Quelle commande vous sont en cours d'exécution pour vous connecter à la base de données de serveur différent? Ce que vous pensez à changer dans postgresql.conf et pg_hba.conf?
- Avec 10,1 + pgAdmin 4 sous windows 8.1, j'ai tout désinstallé (sous-répertoires c:\program files\postgresql\ et c:\program files (x86)\postgresql\ contenir les programmes de désinstallation) et supprimé les deux répertoires. Restared. Puis installé pgAdmin 4 stand-alone. Il a travaillé! Pas d'autres suggestions fonctionné dans mon cas. Mais ce n'est pas pratique, donc je ne peux pas laisser cela comme une réponse.
Vous devez vous connecter pour publier un commentaire.
Il est en fait un processus en 3 étapes pour vous connecter à un serveur mysql à distance par le biais pgAdmin3.
Vous avez à faire PostgreSQL écoute à distance entrantes connexions TCP, car les paramètres par défaut permettent d'écouter uniquement pour les connexions sur l'interface de bouclage. Pour être en mesure d'accéder au serveur à distance, vous devez ajouter la ligne suivante dans le fichier
/etc/postgresql/8.4/main/postgresql.conf:
listen_addresses = '*'
PostgreSQL par défaut refuse toutes les connexions qu'il reçoit de toute adresse distante, vous avez pour se détendre ces règles en ajoutant cette ligne à
/etc/postgresql/8.4/main/pg_hba.conf:
hôte tous les tous les 0.0.0.0/0 md5
C'est une règle de contrôle d'accès qui permettent à quiconque de connexion à partir de n'importe quelle adresse s'il peut fournir un mot de passe valide (le md5 du mot clé). Vous pouvez utiliser nécessaires réseau/masque au lieu de 0.0.0.0/0 .
Lorsque vous avez appliqué ces modifications à vos fichiers de configuration, vous devez redémarrer le serveur PostgreSQL. Maintenant, il est possible de se connecter à votre serveur à distance, en utilisant le nom d'utilisateur et mot de passe.
sudo /etc/init.d/postgresql stop
etsudo /etc/init.d/postgresql start
. J'ai googlé pour cela. L'ajout d'ici pour les gens qui ne connaissent pas la commande pour redémarrer le service/var/lib/pgsql/9.4/data/pg_hba.conf
0.0.0.0/0 md5
ne fonctionne que pour IPv4. Afin de permettre l'accès pour IPv6 ajouter la ligne suivante ainsi:host all all ::0/0 md5
sudo /etc/init.d/postgresql status
pour voir le statut du service que vous avez démarré ou arrêté.Si vous utilisez PostgreSQL 8 ou supérieur, vous devrez peut-être modifier la
listen_addresses
paramètre dans/etc/postgresql/8.4/main/postgresql.conf
.Essayez d'ajouter la ligne:
qui dira PostgreSQL pour écouter les connexions sur toutes les interfaces réseau.
Si pas défini explicitement, ce paramètre par défaut
localhost
ce qui signifie qu'il n'acceptera des connexions à partir de la même machine.Je n'ai pas eu à changer mon prostgresql.fichier conf mais, j'ai eu à faire ce qui suit basé sur mon psql via la ligne de commande a été la connexion et pgAdmin pas de la connexion sur le RDS avec AWS.
J'ai eu mon RDS mis à la disposition du Public. J'ai pris soin de mes ACL et les groupes de sécurité étaient grand ouverts et toujours problème alors j'ai fait la suivante:
sudo find . -name *.conf
puis
sudo nano ./data/pg_hba.conf
ensuite ajoutée en haut de directives dans pg_hba.fichier conf
host all all 0.0.0.0/0 md5
et pgAdmin automatiquement connecté sur moi.
Cela a également travaillé dans pg_hba.fichier conf
host all all md5
sans adresse IP, ce qui a également travaillé avec mon adresse IPhost all all <myip>/32 md5
Comme une note de côté, mon RDS était dans mon VPC par défaut. J'ai eu un identique RDS exemple, dans mon non-VPC par défaut avec le même groupe de sécurité, l'ACL et de la sécurité groupe de paramètres par défaut de mon VPC et je ne pouvais pas le faire fonctionner. Je ne sais pas pourquoi mais, c'est pour un autre jour.
Pour redhat linux
pgsql9 est le dossier pour la postgres version installée, peut être différent pour d'autres
changé
listen_addresses = '*'
à partir de
listen_addresses = ‘localhost’
et puis
Vérifiez votre pare-feu. Lorsque vous désactivez elle, alors vous pouvez vous connecter. Si vous voulez/pouvez pas désactiver le pare-feu, ajoutez une règle pour votre connexion à distance.