Raul Secan wrote:
Hello, I have succesfuly installed PostgreSQL 7.4.1, on my OS which is
Red Hat Linux 9.0.
I start the server with:
$ pg_ctl -D /usr/local/pgsql/data -l logfile start
And stop it with:
$ pg_ctl -D /usr/local/pgsql/data stop -m fast
There are two questions here, which I want to put to you guys:
1. How can make PostgreSQL run as a Linux service so database server
starts at each reboot
Below are the steps I use when I manually install PostgreSQL to have it
running when the server starts. However I don't use Red Hat, I use
Mandrake instead. You should be able to find the corresponding files on
your server if you know the installation directories for your
PostgreSQL, or use utilities like 'locate' or 'find' to find out where
they are installed.
<start>
*as root*:
- Configure the PostgreSQL SysV Script. This script is useful for
starting, stopping, and checking the status of PostgreSQL.
# cd /usr/local/src/postgresql-7.x
# cp contrib/start-scripts/linux /etc/init.d/postgres
# chmod 755 /etc/init.d/postgres
.... then edit the file to specify the data directory, etc. and sets the environment variabes (PGDATA etc). The file is well documented. If you installed Postgres manually, it should have the correct values already set.
- To have PostgreSQL start automatically when the computer boots add
symbolic links from the correct /etc/rc*.d/ directories to
/etc/init.d/postgres. If the normal runlevel is 3 then you really only
need to add it to rc3.d:
# ln -s /etc/init.d/postgres /etc/rc2.d/S85postgres
# ln -s /etc/init.d/postgres /etc/rc3.d/S85postgres
etc ...
- Start PostgreSQL for the first time:
# /etc/init.d/postgres start
<\start>
2. How can I register the PGDATA environment variable, so I don't have
to use -D /usr/local/pgsql/data parameter (and don't use -l logfile if
it is posible) when run the start command
If step 1. works correctly, the PGDATA variable is set properly.
Otherwise edit the /etc/init.d/postgres file.
Thanks, Raul Secan.
Ron