view backend/doc/schema/postgresql-setup.sh @ 7188:162ef5e93715

Doc.
author Felix Wolfsteller <felix.wolfsteller@intevation.de>
date Fri, 27 Sep 2013 14:39:46 +0200
parents 5aa05a7a34b7
children 4ad2b530dbba
line wrap: on
line source
#!/bin/bash

# $1: user name and password for new DB (equals DB name)
# $2: path to directory with schema-scripts
# $3: host

# run as user postgres (postgresql super-user)
# it is assumed that the owner of the DB has the same name as the DB!

# create PostGIS-DB
createuser -S -D -R $1
createdb $1
createlang plpgsql $1
# Appears e.g. as /usr/share/postgresql/contrib/postgis-1.5/ on other systems.
psql -d $1 -f /usr/share/postgresql/8.4/contrib/postgis-1.5/postgis.sql
psql -d $1 -f /usr/share/postgresql/8.4/contrib/postgis-1.5/spatial_ref_sys.sql
psql -d $1 -c "ALTER USER $1 WITH PASSWORD '$1';"
psql -d $1 -c "GRANT ALL ON geometry_columns TO $1; GRANT ALL ON geography_columns TO $1; GRANT ALL ON spatial_ref_sys TO $1;"

# add credentials to .pgpass (or create .pgpass)
echo "*:*:$1:$1:$1" >> ~/.pgpass
chmod 0600 ~/.pgpass

# apply schema-scripts
psql -d $1 -U $1 -h $3 -f $2/postgresql.sql
psql -d $1 -U $1 -h $3 -f $2/postgresql-spatial.sql
psql -d $1 -U $1 -h $3 -f $2/postgresql-minfo.sql

http://dive4elements.wald.intevation.org