У меня установлены Postgresql 9.3 и 9.4 на моем компьютере с Linux Mint. Как я могу перезапустить postgresql 9.4? Способ перезапустить обе версии вместе тоже подойдет.
Как перезапустить PostgreSQL
Ответы (7)
Попробуйте это как root (возможно, вы можете использовать sudo
или su
):
/etc/init.d/postgresql restart
Без каких-либо аргументов скрипт также дает вам подсказку о том, как перезапустить определенную версию.
[Uqbar@Feynman ~] /etc/init.d/postgresql
Usage: /etc/init.d/postgresql {start|stop|restart|reload|force-reload|status} [version ...]
Точно так же, если он у вас есть, вы также можете использовать инструмент service
:
[Uqbar@Feynman ~] service postgresql
Usage: /etc/init.d/postgresql {start|stop|restart|reload|force reload|status} [version ...]
Обратите внимание на необязательный завершающий аргумент [version ...]
. Это предназначено для того, чтобы вы, пользователь, могли работать с определенной версией, если вы запускали несколько версий. Таким образом, вы можете перезапустить версию X, оставив версии Y и Z нетронутыми и работающими.
Наконец, если вы используете systemd, вы можете использовать systemctl
следующим образом:
[Uqbar@Feynman ~] systemctl status postgresql
● postgresql.service - PostgreSQL database server
Loaded: loaded (/usr/lib/systemd/system/postgresql.service; enabled; vendor preset: disabled)
Active: active (running) since Wed 2017-11-14 12:33:35 CET; 7min ago
...
Вы можете заменить status
на stop
, start
или restart
, а также выполнить другие действия. Полную информацию см. в документации. Для работы с несколькими одновременными версиями синтаксис немного отличается. Например, чтобы остановить v12
и перезагрузить v13
, вы можете запустить:
systemctl stop postgresql-12.service
systemctl reload postgresql-13.service
Спасибо @Jojo за то, что указал мне на это самое. Наконец, имейте в виду, что разрешения root
могут потребоваться для неинформативных задач, как и в других случаях, рассмотренных ранее.
systemctl
работает с разными версиями Postgresql. Вы можете указать это с помощью systemctl status [email protected]
. Замените 13 на номер версии, к которой вы хотите обратиться.
- person Jojo; 30.10.2020
Вы также можете перезапустить postgresql с помощью этой команды, она должна работать в обеих версиях:
sudo service postgresql restart
В Windows:
1-Открыть окно запуска с помощью Winkey + R
2-тип services.msc
3-Поиск службы Postgres на основе установленной версии.
4-Нажмите «Остановить», «Запустить» или «Перезапустить» опцию службы.
В Linux:
sudo systemctl restart postgresql
также вместо перезагрузки вы можете заменить: статус, стоп или статус.
Это должно работать:
sudo systemctl stop postgresql
sudo systemctl start postgresql
macOS:
- В левом верхнем углу строки меню MacOS у вас есть значок Postgres.
- Нажмите на нее, откроется выпадающее меню
- Нажмите «Стоп» ->, затем нажмите «Пуск».
Сначала вы можете проверить, запущен ли процесс postgress.
ps -ef | grep post
Возможно, вам придется использовать (post|pg) на стороне grep, чтобы обнаружить процесс для службы Postgres, работающей на вашем компьютере, это может зависеть от вашей ОС.
И вы можете просто убить дочерний процесс, так как большая часть этого процесса должна перезапуститься автоматически.
sudo kill $pid_of_the_child_process
Правильный способ перезапустить сервер postgres — использовать
pg_ctl перезапустить -D /home/postgres/postgresdbdata/
pg_ctl обычно находится в расположении usr/local/pgsql/bin/pg_ctl, если вы не добавили его в твой путь.
Документацию можно найти здесь https://www.postgresql.org/docs/13/app-pg-ctl.html Здесь содержится более подробная информация о запуске, остановке, перезапуске и т. д. сервера postgres.
systemctl restart postgresql
: он перезапустил обе мои установленные работающие версии. - person John1024   schedule 02.02.2020