By default the postgres user's group is 'daemon' on my Mac. This is
probably true for you as well. Change occurrences of
'postgres:postgres' in your chown commands to 'postgres:daemon'.
On 10/23/2011 8:16 PM, René Fournier wrote:
> […]
> ---> Installing postgresql90-server @9.0.5_0
>
> To create a database instance, after install do
> sudo mkdir -p /opt/local/var/db/postgresql90/defaultdb
> sudo chown postgres:postgres /opt/local/var/db/postgresql90/defaultdb
> sudo su postgres -c '/opt/local/lib/postgresql90/bin/initdb -D /opt/local/var/db/postgresql90/defaultdb'
>
> To tweak your DBMS, consider increasing kern.sysv.shmmax by adding an increased kern.sysv.shmmax .. to
/etc/sysctl.conf
> ---> Activating postgresql90-server @9.0.5_0
> ---> Cleaning postgresql90-server
> Sun Oct 23 12:45:49 -- server :: sudo mkdir -p /opt/local/var/db/postgresql90/defaultdb
> Sun Oct 23 12:48:41 -- server :: sudo chown postgres:postgres /opt/local/var/db/postgresql90/defaultdb
> chown: postgres: Invalid argument
> Sun Oct 23 12:48:51 -- server ::
>
>
> So, according to the above instructions (and the tutorials I've read), this should simply work. What am I missing?
>
> On a different note, I have a couple questions concerning PostgreSQL security:
>
> 1. My understanding is that making the defaultdb directory owned by the postgres user is for security. Correct?
> 2. Whenever starting psql, I have on my own machines had to specify "psql -U postgres", because:
>
> Sun Oct 23 14:27:28 -- Frodo :: psql
> psql: FATAL: role "rene" does not exist
>
> So, I do I need to add a role/user for my OS X user name?
>
> Coming from MySQL, I find the devil is in the details. Just trying to figure things out… Thanks!
>
> …Rene