- Я
apt-get
установил Postgres 9.2.4 (используя PPA). - Я использовал
pg_dropcluster --stop 9.2 main
для удаления кластер базы данных по умолчанию, потому что я намеревался создать новый кластер на отдельном томе SSD (том хранилища блоков Rackspace), который был только что смонтирован. - Я создал этот новый кластер, данные которого находятся на томе моего SSD, и запустил его (
ps
показывает все обычные процессы Postgres, запущенные для этого нового кластера, и я могу открыть оболочку Postgres и запустить SQL - т. Е. Он работает нормально). Теперь, когда я бегу,pg_lsclusters
там никого нет.
main
Кластер перечислен только штраф , прежде чем я его удалил. Почему не появляется мой новый кластер, даже когда он работает? Я даже перезагрузил сервер (на всякий случай).
postgresql
postgresql-9.2
orokusaki
источник
источник
pg_wrapper
Хотя не многие дистрибутивы используют )initdb -D /the/dir/
- я думаю, я только что понял, что я должен был использовать,pg_createcluster -d /the/dir/
не так ли? Они оба одинаковы, за исключением каких-либо дополнительных метаданных, которые Postgres хранит о кластере? (Я нахожусь на Ubuntu 12.04.2)pg_ctlcluster 9.2 mycluster start
pg_wrapper
вы должны делать это последовательно.Ответы:
Чтобы использовать эти общие инструменты postgres с кластером, их необходимо использовать последовательно. Вы бы использовали
pg_createcluster -d /path/to/data
, а неinitdb
.pg_createcluster
добавляет кластер дляpostgres-common
облегчения этих удобных операций. Это обертка, подобноpg_ctlcluster
инструментам нижнего уровня (например,initdb
иpg_ctl
), предоставляющая доступ из одного места для работы на всех ваших кластерах. Он также имеет некоторые значения по умолчанию, например, автоматически настроенное местоположение журнала на основе имени кластера. это означает, что вам не нужно использовать его-l /var/log/my-custom.log
при создании или запуске сервера.источник