Re: initdb error - Mailing list pgsql-general

From Amitabh Kant
Subject Re: initdb error
Date
Msg-id CAPTAQBJ-gS=LPOKLiH12U_KaqV1Pczz5UYqFhWbW4mXLYFinDQ@mail.gmail.com
Whole thread Raw
In response to Re: initdb error  (Adrian Klaver <adrian.klaver@gmail.com>)
List pgsql-general
On Thu, Dec 13, 2012 at 10:00 PM, Adrian Klaver <adrian.klaver@gmail.com> wrote:
On 12/13/2012 08:18 AM, David Noel wrote:
On 12/13/12, Adrian Klaver <adrian.klaver@gmail.com> wrote:
On 12/13/2012 07:38 AM, David Noel wrote:
I'm running into the following error message when running initdb (FreeBSD
host):

ygg# /usr/local/etc/rc.d/postgresql initdb -D /zdb/pgsql/data --debug
The files belonging to this database system will be owned by user
"pgsql".
This user must also own the server process.

The database cluster will be initialized with locales
    COLLATE:  C
    CTYPE:    en_US.UTF-8
    MESSAGES: en_US.UTF-8
    MONETARY: en_US.UTF-8
    NUMERIC:  en_US.UTF-8
    TIME:     en_US.UTF-8
The default text search configuration will be set to "english".

creating directory /zdb/pgsql/data ... ok
creating subdirectories ... ok
selecting default max_connections ... 100
selecting default shared_buffers ... 32MB
creating configuration files ... ok
creating template1 database in /zdb/pgsql/data/base/1 ... FATAL:
could not open file "pg_xlog/000000010000000000000001" (log file 0,
segment 1): No such file or directory
child process exited with exit code 1
initdb: removing data directory "/zdb/pgsql/data"

My best guess is that it has something to do with permissions, but I
really have no idea. Has anyone seen this before and found a way
around it?


Not quite what is in the the init script in rc.d, have you tried running
the initdb command directly? As you say I believe there are permissions
problems. So following the instructions found below may solve your problem:

http://www.postgresql.org/docs/9.2/interactive/app-initdb.html




-David




--
Adrian Klaver
adrian.klaver@gmail.com



I've tried initdb directly:

initdb -D /zdb/pgsql/data

...and also through pg_ctl:

pg_ctl initdb -D /zdb/pgsql/data

...and still seem to wind up with the error:

creating template1 database in /zdb/pgsql/data/base/1 ... FATAL:
could not open file "pg_xlog/000000010000000000000001" (log file 0,
segment 1): No such file or directory

You are doing the above as the database user ex:postgres?

The database user has permissions on /zdb/pgsql/data?



-David




--
Adrian Klaver
adrian.klaver@gmail.com


The rc.d script executes the command as the correct user. This is the line in rc.d script that runs the initdb command:
su -l -c ${postgresql_class} ${postgresql_user} -c "exec /usr/local/bin/initdb ${postgresql_initdb_flags} -D ${postgresql_data}" 

Not sure about his permission though

pgsql-general by date:

Previous
From: Tom Lane
Date:
Subject: Re: initdb error
Next
From: "Kevin Grittner"
Date:
Subject: Re: How to keep the last row of a data set?