Je passe à Postgres 9.2.2 (à partir de 9.1.4). Lorsque j'essaie de mettre à niveau les bases de données en utilisant:
pg_upgrade -b /usr/local/Cellar/postgresql/9.1.4/bin -B /usr/local/Cellar/postgresql/9.2.2/bin -d /usr/local/var/postgres91 -D /usr/local/var/postgres
Je reçois le message d'erreur suivant:
Performing Consistency Checks
-----------------------------
Checking current, bin, and data directories ok
There seems to be a postmaster servicing the old cluster.
Please shutdown that postmaster and try again.
Failure, exiting
J'ai essayé d'arrêter le serveur, mais je n'arrive pas à faire fonctionner la commande de mise à niveau. Comment arrêter l'ancien maître de poste?
postgresql
postgresql-9.2
Luciano
la source
la source
Sous OS X Yosemite, après avoir installé PostgreSQL via Homebrew:
la source
pg_ctl -D /usr/local/var/postgres/ stop
revientNo such process
, alors vous devriezrm /usr/local/var/postgres/postmaster.pid
.Sur la plupart des systèmes Unix, vous trouverez un script init dans
/etc/init.d
lequel vous pouvez utiliser pour démarrer, redémarrer, recharger ou arrêter les services Unix.par exemple
Si ce n'est pas disponible, vous pouvez utiliser
pg_ctl stop
par exemple
Plus à propos
pg_ctl
http://www.postgresql.org/docs/9.1/static/app-pg-ctl.html
EDIT Si vous obtenez toujours l'erreur et que vous êtes sûr que le postmaster n'est plus en cours d'exécution (vérifiez avec
sudo ps aux | grep "postmaster"
- ne doit renvoyer qu'une seule ligne), vous avez toujours le fichier pid après un arrêt impurSupprimer le pidfile par exemple
la source
pg_ctl stop
, je reçois:pg_ctl: no database directory specified and environment variable PGDATA unset
. BTW, aucun serveur semble être en cours d' exécution:luciano$ ps auxwww | grep postgresluciano 995 0.0 0.0 2434892 548 s000 R+ 10:42PM 0:00.00 grep postgres
.sudo ps aux | grep "postmaster"
luciano 3101 0.0 0.0 2434892 548 s002 S+ 9:12PM 0:00.00 grep postmaster
Sur Ubuntu, arrêtez le service PostgreSQL avant d'effectuer la mise à niveau. Cela arrêtera toutes les instances de postgres, quelles que soient les versions installées.
service postgresql stop
la source