Мне нужно запустить мой второй экземпляр postgresql при загрузке Linux. Я добавил эту команду (как в документации postgresql) в rc.local:

/usr/lib/postgresql/9.1/bin/pg_ctl start -l logfile -D /var/lib/postgresql/9.1/main2

Но если я попытаюсь запустить pg_ctl:

cannot be run as root

Please log in (using, e.g., "su") as the (unprivileged) user that will
own the server process.
t, it gives me this error:

Как я могу указать, чтобы запустить эту команду как postgres, но на самом деле выполнить ее с root (потому что root владеет ею).

Или есть какой-то лучший способ сделать второй сценарий инициализации для postgresql?

PS (Я пользуюсь Ubuntu)

1 ответ1

1

Если вы работаете в Ubuntu, как вам кажется, вам не нужно ничего делать самостоятельно.

Прочитайте документы для pg_ctlcluster , pg_createcluster , pg_lsclusters . Они являются частью пакета pg_wrapper для Ubuntu, который обеспечивает управление несколькими экземплярами и встроенными версиями.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .