При установке PostgreSQL в домашних условиях отсутствуют файлы конфигурации

21

Поэтому я успешно установил PostgreSQL 9.1 на MacOSX Lion. В отличие от людей, мне не пришлось менять PATH, и в системе не было установлено никакой другой версии PostgreSQL ( $ psql --version показывает psql (PostgreSQL) 9.1.4).

Тем не менее, когда я пытаюсь запустить сервер с pg_ctl -D /usr/local/var/postgres -l /usr/local/var/postgres/server.log startним не работает. Во-первых, он говорит, что dir не /usr/local/var/postgres/существует. Хорошо, создал один. Тогда это говорит, что разрешения неправильны - хорошо, изменили их. Затем требуется postgresql.confфайл, чтобы быть в этом каталоге.

Теперь я нашел примеры конфигов /usr/local/Cellar/postgresql/9.1.4/share/postgresql, но я не уверен, что это должно быть так. Во всех руководствах, которые я видел в Интернете, не упоминалось создание файлов конфигурации из примеров. Разве доморощенный не должен предоставлять это из коробки, чтобы я просто запустил сервер сразу?

Снитко
источник
Если вы считаете, что это необходимо, отправьте новый выпуск - я лично никогда не устанавливал его, поэтому я не могу сказать, предназначено это или нет.
slhck

Ответы:

21

Это ваша первая установка? Вы пытались бежать initdb /usr/local/var/postgres? Это просто решило ту же проблему, которая только что произошла со мной после очистки старой общесистемной установки PostgreSQL и переустановки его с помощью Homebrew.

Запуск brew info postgresвсегда полезен как напоминание о командах, доступных после установки пакета.

postgresql 9.1.4
http://www.postgresql.org/
Depends on: readline, ossp-uuid
/usr/local/Cellar/postgresql/9.1.4 (2751 files, 36M) *
https://github.com/mxcl/homebrew/commits/master/Library/Formula/postgresql.rb

==> Caveats
# Build Notes

If builds of PostgreSQL 9 are failing and you have version 8.x installed,
you may need to remove the previous version first. See:
  https://github.com/mxcl/homebrew/issues/issue/2510

To build plpython against a specific Python, set PYTHON prior to brewing:
  PYTHON=/usr/local/bin/python  brew install postgresql
See:
  http://www.postgresql.org/docs/9.1/static/install-procedure.html

# Create/Upgrade a Database

If this is your first install, create a database with:
  initdb /usr/local/var/postgres

To migrate existing data from a previous major version (pre-9.1) of PostgreSQL, see:
  http://www.postgresql.org/docs/9.1/static/upgrading.html

# Start/Stop PostgreSQL

If this is your first install, automatically load on login with:
  mkdir -p ~/Library/LaunchAgents
  cp /usr/local/Cellar/postgresql/9.1.4/homebrew.mxcl.postgresql.plist ~/Library/LaunchAgents/
  launchctl load -w ~/Library/LaunchAgents/homebrew.mxcl.postgresql.plist

If this is an upgrade and you already have the homebrew.mxcl.postgresql.plist loaded:
  launchctl unload -w ~/Library/LaunchAgents/homebrew.mxcl.postgresql.plist
  cp /usr/local/Cellar/postgresql/9.1.4/homebrew.mxcl.postgresql.plist ~/Library/LaunchAgents/
  launchctl load -w ~/Library/LaunchAgents/homebrew.mxcl.postgresql.plist

Or start manually with:
  pg_ctl -D /usr/local/var/postgres -l /usr/local/var/postgres/server.log start

And stop with:
  pg_ctl -D /usr/local/var/postgres stop -s -m fast

# Loading Extensions

By default, Homebrew builds all available Contrib extensions.  To see a list of all
available extensions, from the psql command line, run:
  SELECT * FROM pg_available_extensions;

To load any of the extension names, navigate to the desired database and run:
  CREATE EXTENSION [extension name];

For instance, to load the tablefunc extension in the current database, run:
  CREATE EXTENSION tablefunc;

For more information on the CREATE EXTENSION command, see:
  http://www.postgresql.org/docs/9.1/static/sql-createextension.html
For more information on extensions, see:
  http://www.postgresql.org/docs/9.1/static/contrib.html

# Other

Some machines may require provisioning of shared memory:
  http://www.postgresql.org/docs/current/static/kernel-resources.html#SYSVIPC

To install postgresql (and ossp-uuid) in 32-bit mode:
   brew install postgresql --32-bit

If you want to install the postgres gem, including ARCHFLAGS is recommended:
    env ARCHFLAGS="-arch x86_64" gem install pg

To install gems without sudo, see the Homebrew wiki.
Висенте Рейг
источник
Я догадывался, что это существовало, но я не знал об этом. brew info blah, Это фантастика! Спасибо. :)
chandsie
По состоянию на июнь 2014 года brew info postgresболее не предоставляется полезная информация о CREATE EXTENSION- поэтому для меня было полезно увидеть ее здесь.
user12345