source: trunk/data/konvert/postnas_0.7/datenbank_anlegen.sh @ 194

Revision 193, 3.2 KB checked in by astrid.emde, 11 years ago (diff)

log-Dateien für die einzelnen Befehle eingefügt

RevLine 
[184]1#!/bin/bash
[190]2## -------------------------------------------------
3## Konvertierung von ALKIS NAS-Format nach PostGIS -
4## Teil 1: Eine neue PostGIS-Datenbank anlegen     -
5## -------------------------------------------------
[184]6##
7## Stand:
8##  2012-02-10 PostNAS 07, Umbenennung
9##
[190]10
11POSTNAS_HOME=$(dirname $0)
12MANDANT_HOME=$PWD
13EPSG=25832
14
[184]15## Dialog mit Anwender
16function get_db_config(){
17        # welches Datenbank-Template?
18        echo ""
19        echo "Datenbank-Template fuer die neue ALKIS-Datenbank?"
20        echo " (einfach Enter fuer die Voreinstellung template_postgis)"
21        read DBTEMPLATE
22        : ${DBTEMPLATE:="template_postgis"}
23#
24        # Name der neuen ALKIS-Datenbank
25        until [ -n "$DBNAME" ]
26        do
27                echo ""
28                echo "Name der ALKIS-Datenbank?"
29                read DBNAME
30        done
31        echo ""
32        echo "Datenbank-User?  (Dieser muss eine gleichnamige Service-Datenbank haben)"
33        read DBUSER
34#
35        until [ "$JEIN" = "j" -o "$JEIN" = "n" ]
36        do
37                echo ""
38                echo "Datenbank $DBNAME wird GELOESCHT und neu angelegt  - j oder n?"
39                read JEIN
40        done
41}
42#
43## aller Laster  ANFANG
44get_db_config;
45if test $JEIN != "j"
46then
47        echo "Abbruch"
48        exit 1
49fi
[190]50
51cd $POSTNAS_HOME
52
53if ! [ -e alkis-trigger.sql ]; then
54        if ln -s alkis-trigger-kill.sql alkis-trigger.sql; then
55                echo "** Symlink zu alkis-trigger-kill.sql (KEINE HISTORIE) angelegt"
56        else
57                echo "** alkis-trigger.sql FEHLT!"
58                exit 1
59        fi
60fi
61       
62
[184]63## Datenbank-Connection:
64# -h localhost
65con="-p 5432 -d ${DBNAME} "
66echo "connection " $con
67echo "******************************"
68echo "**  Neue ALKIS-Datenbank    **"
69echo "******************************"
70echo " "
71echo "** Loeschen Datenbank " ${DBNAME}
72## Hier wird vorausgesetzt, dass der User eine Service-DB hat, die seinen Namen traegt
73echo  "DROP database ${DBNAME};" | psql -p 5432 -d ${DBUSER} -U ${DBUSER}
74echo " "
75echo "** Anlegen (leere) PostGIS-Datenbank"
[190]76createdb --port=5432 --username=${DBUSER} -E utf8  -T ${DBTEMPLATE} ${DBNAME}
[184]77echo " "
78echo "** Anlegen der Datenbank-Struktur fuer PostNAS (alkis_PostNAS_0.7_schema.sql)"
[193]79psql $con -v alkis_epsg=$EPSG -U ${DBUSER} -f alkis_PostNAS_0.7_schema.sql >$MANDANT_HOME/log/schema.log
[184]80echo " "
81echo "** Anlegen der Datenbank-Struktur - zusaetzliche Schluesseltabellen"
82## Nur die benoetigten Tabellen fuer die Buchauskunft
[193]83psql $con -U ${DBUSER} -f alkis_PostNAS_0.7_keytables.sql >$MANDANT_HOME/log/keytables.log
[184]84echo " "
85echo "** Anlegen Optimierung Nutzungsarten (nutzungsart_definition.sql)"
[190]86psql $con -U ${DBUSER} -f nutzungsart_definition.sql
[184]87echo " "
88echo "** Laden NUA-Metadaten (nutzungsart_metadaten.sql) Protokoll siehe log"
[190]89psql $con -U ${DBUSER} -f nutzungsart_metadaten.sql >$MANDANT_HOME/log/meta.log
[184]90echo " "
91echo "** Anlegen Post Processing (pp_definition.sql)"
[193]92psql $con -U ${DBUSER} -f pp_definition.sql >$MANDANT_HOME/log/pp_definition.log
[184]93echo " "
94echo "** Definition von Views (sichten.sql)"
[193]95psql $con -U ${DBUSER} -f sichten.sql >$MANDANT_HOME/log/sichten.log
[184]96echo " "
97echo  "COMMENT ON DATABASE ${DBNAME} IS 'ALKIS - Konverter PostNAS 0.7';" | psql -p 5432 -d ${DBNAME} -U ${DBUSER}
98echo " "
99echo "** Berechtigung (grant.sql) Protokoll siehe log"
[193]100psql $con -U ${DBUSER} -f grant.sql >$MANDANT_HOME/log/log_grant.log
[184]101echo " "
102echo "***************************"
103echo "**  Ende Neue Datenbank  **"
104echo "***************************"
Note: See TracBrowser for help on using the repository browser.