On 05/23/2015 08:06 AM, Tom Lane wrote:
twoflower <standa.kurik@xxxxxxxxx> writes:
So I wrote a few scripts to make my life easier, e.g. *pg94start.sh*:
su postgres -c "/usr/lib/postgresql/9.4/bin/pg_ctl -D
/storage/postgresql/9.4/data -o '-c
config_file=/etc/postgresql/9.4/main/postgresql.conf'"
But running this script did not work, the server would not start.
Testing this, the problem appears to be that you forgot the keyword
"start", so pg_ctl didn't really do anything. It's always a good
idea to redirect pg_ctl's stdout/stderr somewhere, so that you can
look at it in event of problems. (It will *not* magically go to the
server log file.)
So I
checked the log file and there was:
*FATAL: could not open file "/storage/postgresql/9.4/data/postgresql.conf":
Permission denied*
I suspect this was left over from some previous attempt.
After fixing the ownership of this file, it worked.
I can't explain that claim, but for me, -c config_file=something
seems to work as you'd expect, and a look at the server source
code confirms that it should honor that (cf SelectConfigFiles()).
I think the documentation Adrian pointed to is a bit out of date,
or at least oversimplified.
So order on the the command line is not important, the start up code
sets its own precedence?
One possible theory is that you had an "include" directive in
the config file in /etc, causing it to try to read the other one?
regards, tom lane
--
Adrian Klaver
adrian.klaver@xxxxxxxxxxx
--
Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general