Я решил запустить PostgreSQL на своей Fedora 20, поэтому я
sudo yum install postgresql-server.x86_64 postgresql-libs.x86_64 postgresql.x86_64
Теперь, если я сделаю postgres -D /var/lib/pgsql/data
под обычным пользователем получаю Permission denied for "/var/lib/pgsql/data/postgresql.conf"
, если я попробую под root, я получу ошибку о том, что мне не следует запускать postgres под привилегированным пользователем.
Я понимаю эти две ошибки, но теперь становится странно - sudo -u postgres postgres -D /var/lib/pgsql/data
дает мне ошибку, я не хватает postgresql.conf
- если я создаю его под root (потому что root владеет каталогом), он снова жалуется на разрешения во время запуска. Если я попытаюсь бежать initdb -D /var/lib/pgsql/data
это тоже не работает, потому что если права неправильные (dir принадлежит root).
Так что я действительно не уверен, что мне делать, что я сделал неправильно? Потому что все в /var/lib/
принадлежит root, и это место по умолчанию для конфигурации в Fedora (по крайней мере, для postgres), поэтому мне кажется, что это действительно испортилось.
Читать /usr/share/doc/postgresql/README.rpm-dist
, это касается настройки. В частности, он сообщает вам, что для создания каталога данных вы должны запустить:
postgresql-setup initdb
Если вы использовали RPM PGDG от http://yum.postgresql.org/ вместо стандартных Red Hat это будет:
/usr/pgsql-9.3/bin/postgresql93-setup initdb
В настоящее время я ищу способы улучшить официальную документацию PostgreSQL, чтобы упростить жизнь людям, которые установили PostgreSQL из обычных пакетов, таких как RPM Fedora или пакеты Ubuntu. В настоящее время он слишком сосредоточен на исходных установках.