Postgresql

From SME Server
Revision as of 08:48, 4 November 2007 by PicsOne (talk | contribs)
Jump to navigation Jump to search

How to install Postgres 8

  Note:
This howto are created with information extracted from forums. Proceed at your own risk. Work for me.


Enable centosplus repository and install postgres (at the time writen this howto is 8.1.9 version)

yum --enablerepo=centosplus install postgresql postgresql-contrib postgresql-devel postgresql-docs postgresql-pl postgresql-python postgresql-test


  Warning:
The above command install postgres and update postgres-libs, and install for dependency tcl and mx from base repository. If you see other packages, such as perl or php, abort the installation now!. This occur because maybe you have installed perl-CGI-Session or perl-DBD-Pg. These two packages are in your system because you have installed otrs or another aplication. In my case I have remove these two packages (because I not need otrs any more), and run again the installation.


Start postgres

/etc/init.d/postgresql start

Then make the necesary custom templates:

mkdir -p /etc/e-smith/templates/var/lib/pgsql/data
mkdir -p /etc/e-smith/templates-custom/var/lib/pgsql/data
cp /var/lib/pgsql/data/postgresql.conf /etc/e-smith/templates/var/lib/pgsql/data
cp /var/lib/pgsql/data/pg_hba.conf /etc/e-smith/templates/var/lib/pgsql/data
cp /var/lib/pgsql/data/postgresql.conf /etc/e-smith/templates-custom/var/lib/pgsql/data
cp /var/lib/pgsql/data/pg_hba.conf /etc/e-smith/templates-custom/var/lib/pgsql/data


Now login as postgres user:

su postgres

Then access to superuser database, set a password and exit.

psql -U postgres -d template1
alter user postgres with encrypted password 'xxxxx';
\q
exit

Edit the file /etc/e-smith/templates-custom/var/lib/pgsql/data/postgresql.conf and change the following settings:

superuser_reserved_connections=2
ssl = on
password_encryption = on
listen_addresses = 'localhost'

Then copy your server SSL keys:

cd /var/lib/pgsql/data
cp /etc/httpd/conf/ssl.crt/server.crt .
cp /etc/httpd/conf/ssl.key/server.key .
chown postgres:postgres server.*

Edit the file /etc/e-smith/templates-custom/var/lib/pgsql/data/pg_hba.conf and change the following settings: