Postgres DB ne démarre pas sur Mac OSX: erreur dit: connexions sur Unix domain socket [fermé]
j'ai installé Postgresql puis j'ai lancé un tas d'applications rails sur mon Mac OSX Mountain Lion local et j'ai créé des bases de données, etc. Aujourd'hui, après un certain temps quand j'ai lancé pgAdminIII et essayé de lancer un serveur de base de données, j'ai eu cette erreur:
Un rapide google a montré ce après. Plus de navigation pointée sur le fait qu'il pourrait y avoir une sorte de maître de poste.fichier pid traînant autour de cela pourrait être la cause de cette. Si je supprime que les choses allaient bien.
cependant, avant d'aller supprimer des choses sur mon ordinateur, je voulais m'assurer que le débogage par Im soit systématique, ce qui n'entraînerait pas plus de problèmes.
quelque part, j'ai lu qu'avant de supprimer ce fichier, je dois exécuter cette commande:
ps auxw | grep post
si je n'obtiens aucun résultat alors, c'est OK pour supprimer le fichier. D'autre pas. Eh bien, j'ai obtenu ce résultat de cette commande:
AM 476 0.0 0.0 2423356 184 s000 R+ 9:28pm 0:00.00 grep post
donc maintenant, je suis complètement confus.
alors que dois-je faire?
Voici une partie de mon journal d'erreurs Postgres server:
FATAL: lock file "postmaster.pid" already exists
HINT: Is another postmaster (PID 171) running in data directory "/usr/local/var/postgres"?
Postgresql n'est toujours pas en cours d'exécution, encore obtenir la même erreur et rien n'a changé. Je suis trop froussard pour effacer des choses sans vérifier.
est-ce que certains d'entre vous, experts, pourraient guider un noob?
Merci
4 réponses
j'ai eu le même problème aujourd'hui sur Mac Sierra. Dans Mac Sierra vous pouvez trouver postmaster.pid
à l'intérieur de /Users/<user_name>/Library/Application Support/Postgres/var-9.6
. Supprimer postmaster.pid
et le problème sera résolu.
cela se produit souvent si la base de données n'a pas été fermée correctement.
supprimer le maître de poste.fichier pid:
rm /usr/local/var/postgres/postmaster.pid
Ou, en arrière:
mv /usr/local/var/postgres/postmaster.pid /usr/local/var/postgres/postmaster.pid.backup
la base de données fonctionne.
Voici les mesures que j'ai prises:
- j'ai redémarré mon ordinateur
- j'ai ouvert le terminal et couru
cd /
- puis j'ai fait
ls -la
- S'est assuré que je pourrais obtenir à
MackintoshHD/usr/local/var/postgres
- Puis
ls -la
- J'ai vu le maître de poste.fichier pid
- j'ai exécuté cette commande
cp postmaster.pid ~/Desktop
qui a copié le fichier sur mon bureau.J'aime le faire si je supprime des fichiers. Si quelque chose fait mal, je peux le mettre en arrière - puis j'ai lancé cette commande pour supprimer le fichier des postgres
répertoire
rm -r postmaster.pid
- je suis allé à mon gui pgadmin3 et je l'ai allumé. et Voila il a travaillé :)
merci à @Craig Ringer pour son aide
J'utilise Postgres.app, et la ci-dessous a fonctionné pour moi:
j'ai entré les commandes dans mon terminal ci-dessous, localisant le dossier Postgres à l'avance et n'utilisant pas"justin".
$declare -x PGDATA="/Users/justin/Library/Application Support/Postgres/var-9.4"
$pg_ctl restart -m immediate
comme Justin l'explique dans son post, la sortie après cela était:
en attente d'un serveur à l'arrêt............................................................... échec de pg_ctl: le serveur ne s'éteint pas
après en entrant à nouveau la commande:
$pg_ctl restart -m immediate
ça a marché et j'ai eu ce message:
pg_ctl: l'ancien processus serveur (PID: 373) semble être parti serveur de démarrage quoi qu'il en soit serveur de démarrage LOG: système de base de données a été interrompu; dernier connu au 2015-07-28 18: 15: 26 PDT LOG: système de base de données n'était pas arrêt correct; récupération automatique en cours journal: enregistrer avec longueur de zéro à 0/4F0F7A8 JOURNAL: refaire n'est pas tenu de JOURNAL: la base de données système est prêt à accepter les connexions LOG: lanceur autovacuum commencé