L'erreur dans son intégralité se lit comme suit:
psql: impossible de se connecter au serveur: aucun fichier ou répertoire de ce type. Le serveur fonctionne-t-il localement et accepte-t-il les connexions sur le socket de domaine Unix "/tmp/.s.PGSQL.5432"?
C'est la deuxième fois que je configure Postgresql via Homebrew sur mon Mac, et je n'ai aucune idée de ce qui se passe. Auparavant, cela fonctionnait. À un moment donné, j'ai dû entrer une commande qui a gâché les choses. Je ne suis pas sûr. Maintenant, chaque fois que j'entre une commande SQL à partir de la ligne de commande, je reçois le message ci-dessus. J'ai exécuté une commande pour vérifier si le serveur fonctionne, et ce n'est apparemment pas le cas. Si j'essaie de démarrer le serveur en utilisant
$ postgres -D/usr/local/pgsql/data
Je reçois l'erreur suivante:
postgres ne peut pas accéder au fichier de configuration du serveur "/usr/local/pgsql/data/postgresql.conf": aucun fichier ou répertoire de ce type
J'ai désinstallé et réinstallé Postgresql via Homebrew, mais le problème persiste. Je ne sais absolument pas comment faire fonctionner cela. Toute aide serait appréciée.
La réponse est ici .
Exécutez cette commande pour démarrer manuellement le serveur:
pg_ctl -D /usr/local/var/postgres -l /usr/local/var/postgres/server.log start
Le problème peut également être attribué à un processus en panne qui a laissé postmaster.pid
fichier derrière.
$ brew services stop postgresql
$ rm /usr/local/var/postgres/postmaster.pid # adjust path accordingly to your install
$ brew services start postgresql
Je devenais pareil
Is the server running locally and accepting connections on Unix domain
socket "/tmp/.s.PGSQL.5432"?
boucle d'installation/démarrage/arrêt/redémarrage de Homebrew en vain ...
Finalement, brew postgresql-upgrade-database
travaillé.
On dirait que j'étais sur 9.6 au lieu de 10.4, et quelque chose que mon dernier redémarrage de l'App Store a redémarré tous mes serveurs de base de données ...
Je viens de résoudre le même problème. C'est juste parce que j'ai oublié pour l'exécuter correctement avant utilisation.
Pour installation purepostgresql
sur Mac OS, le processus sera (en utilisant la commande brew ):
brew install postgresql
alors si vous voulez exécuter automatiquement postgresql
lors de la connexion:
ln -sfv /usr/local/opt/postgresql/*.plist ~/Library/LaunchAgents
ou bien vous voulez juste l'exécuter à tout moment:
postgres -D /usr/local/var/postgres
Si votre cas est plus compliqué, nous allons brew uninstall postgresql
et recommencez ces étapes.
J'espère que cela aide!
psql: could not connect to server: No such file or directory
Is the server running locally and accepting
connections on Unix domain socket"/var/pgsql_socket/.s.PGSQL.5432"?
J'ai continué à obtenir l'erreur ci-dessus et aucune des solutions ci-dessus n'a fonctionné pour moi. Enfin, la solution suivante a résolu mon problème sur Mac OS X
Installer des postgres à l'aide de brew
brew install postgres
Installer les services de brassage
brew tap homebrew/services
Pour démarrer postgres en tant que service d'arrière-plan
brew services start postgresql
Pour arrêter manuellement les postgres
brew services stop postgresql
Nous pouvons également utiliser les services de brassage pour redémarrer Postgres
brew services restart postgresql
Cela se produit lorsque le serveur postgres n'est pas en cours d'exécution. Étapes pour installer correctement Postgres via Homebrew sur MAC:
brew install postgres
initdb /Users/<username>/db -E utf8
[Ceci initialise postgres pour utiliser le répertoire donné comme répertoire de base de données. Normalement, il n'est pas conseillé d'utiliser le répertoire utilisateur pour le stockage de la base de données. Modifier le fichier sudoers pour ajouter initdb et des commandes similaires, puis exécuter initdb sur/usr/local/var/postgres]
pg_ctl -D /Users/<username>/db -l logfile start
[Après avoir réussi l'étape 2, il vous sera demandé d'exécuter l'étape 3. Cette commande démarre manuellement le serveur.]
Ça a marché pour moi. Modifiez votre répertoire postgresql en fonction de la version de votre système.
Chemin commun- rm /usr/local/var/postgres/postmaster.pid
mais pour [email protected] dans mon chemin système est rm /usr/local/var/[email protected]/postmaster.pid
redémarrez [email protected] brew services restart [email protected]
récemment, je suis passé par un problème similaire. il y a juste un autre problème et une autre solution. J'exécutais 2 versions de postgres (9.3 et 9.6) bien que le serveur ait été configuré pour s'exécuter sur 2 ports différents mais certains comment la commande psql sur bash essaie de se connecter au port par défaut 5432. Assurez-vous de vérifier si votre serveur fonctionne et vérifiez vos paramètres de port, puis exécutez psql -p <port> postgres
. La solution change de port.
Je décommente simplement dans /etc/postgresql/9.5/main/postgresql.conf
unix_socket_permissions = 0777
et redémarrez postgres. Et pour moi ça marche.
Je cherchais depuis longtemps, et c'était la solution la plus propre et la plus soignée:
J'ai récemment mis à niveau Postgres de 9.2 à 9.3 en utilisant des postgres de mise à niveau de brew. Le processus a été fluide et pg_upgrade est un outil très pratique.
Cependant, des problèmes sont survenus une fois que j'ai essayé d'exécuter les spécifications nécessaires pour se connecter à Postgres. Même si Postgres fonctionnait définitivement, tout à coup, je recevais:
impossible de se connecter au serveur: aucun fichier ou répertoire de ce type (PG :: ConnectionBad) Le serveur s'exécute-t-il localement et accepte-t-il les connexions sur le socket de domaine Unix "/var/pgsql_socket/.s.PGSQL.5432"? Le problème était que la nouvelle version de Postgres écoute à la place sur /tmp/.s.PGSQL.5432. J'aurais pu déconner avec la configuration et faire en sorte que Postgres utilise la socket de domaine qu'elle était auparavant, ou dire explicitement Rails comment se connecter, mais ces deux approches semblaient être un travail que je n'aurais pas dû avoir À aucun moment je n'avais dit Rails de se connecter aux postgres sur ce chemin, Rails l'avait supposé, et maintenant ses hypothèses étaient fausses).
La solution est simple, mais un peu surprenante. Lorsque vous installez la gemme "pg", elle détecte la version de Postgres installée et définit le chemin de socket de domaine de manière appropriée. La solution est aussi simple que de réinstaller la gemme. $ gem uninstall pg $ cd my-Rails-app/ $ bundle install
http://daniel.fone.net.nz/blog/2014/12/01/fixing-connection-errors-after-upgrading-postgres/
Pour moi, cela s'est également produit après un redémarrage et aucune des solutions ci-dessus n'a fonctionné pour moi. Après avoir vérifié le journal du serveur comme ceci:
tail /usr/local/var/postgres/server.log
J'ai remarqué:
2019-11-06 11:04:31.797 CET [85029] FATAL: data directory "/usr/local/var/postgres" has invalid permissions
2019-11-06 11:04:31.797 CET [85029] DETAIL: Permissions should be u=rwx (0700) or u=rwx,g=rx (0750).
J'ai donc changé les autorisations comme ceci:
Sudo chmod 700 /usr/local/var/postgres
et tout fonctionnait à nouveau et la vie était belle.
le mettre à jour en utilisant la commande
brew postgresql-upgrade-database
si vous avez l'erreur suivante Commande 'brew' non trouvée,mais peut être installée avec: Sudo apt install linuxbrew-wrapper
puis installez-le en utilisant la commande
Sudo apt install linuxbrew-wrapper