[162] | 1 | #!/bin/bash
|
---|
| 2 | ## ------------------------------------------------
|
---|
| 3 | ## Konvertierung von ALKIS NAS-Format nach PosGIS -
|
---|
| 4 | ## Teil 1: Eine neue PostGIS-Datenbank anlegen -
|
---|
| 5 | ## ------------------------------------------------
|
---|
| 6 | ##
|
---|
| 7 | ## Stand:
|
---|
| 8 | ## 2012-02-10 PostNAS 07, Umbenennung
|
---|
| 9 | ##
|
---|
| 10 | ## Dialog mit Anwender
|
---|
| 11 | function get_db_config(){
|
---|
| 12 | # welches Datenbank-Template?
|
---|
| 13 | echo ""
|
---|
| 14 | echo "Datenbank-Template fuer die neue ALKIS-Datenbank?"
|
---|
| 15 | echo " (einfach Enter fuer die Voreinstellung template_postgis)"
|
---|
| 16 | read DBTEMPLATE
|
---|
| 17 | : ${DBTEMPLATE:="template_postgis"}
|
---|
| 18 | #
|
---|
| 19 | # Name der neuen ALKIS-Datenbank
|
---|
| 20 | until [ -n "$DBNAME" ]
|
---|
| 21 | do
|
---|
| 22 | echo ""
|
---|
| 23 | echo "Name der ALKIS-Datenbank?"
|
---|
| 24 | read DBNAME
|
---|
| 25 | done
|
---|
| 26 | echo ""
|
---|
| 27 | echo "Datenbank-User? (Dieser muss eine gleichnamige Service-Datenbank haben)"
|
---|
| 28 | read DBUSER
|
---|
| 29 | #
|
---|
| 30 | until [ "$JEIN" = "j" -o "$JEIN" = "n" ]
|
---|
| 31 | do
|
---|
| 32 | echo ""
|
---|
| 33 | echo "Datenbank $DBNAME wird GELOESCHT und neu angelegt - j oder n?"
|
---|
| 34 | read JEIN
|
---|
| 35 | done
|
---|
| 36 | }
|
---|
| 37 | #
|
---|
| 38 | ## aller Laster ANFANG
|
---|
| 39 | get_db_config;
|
---|
| 40 | if test $JEIN != "j"
|
---|
| 41 | then
|
---|
| 42 | echo "Abbruch"
|
---|
| 43 | exit 1
|
---|
| 44 | fi
|
---|
| 45 | ## Datenbank-Connection:
|
---|
| 46 | # -h localhost
|
---|
| 47 | con="-p 5432 -d ${DBNAME} "
|
---|
| 48 | echo "connection " $con
|
---|
| 49 | echo "******************************"
|
---|
| 50 | echo "** Neue ALKIS-Datenbank **"
|
---|
| 51 | echo "******************************"
|
---|
| 52 | echo " "
|
---|
| 53 | echo "** Loeschen Datenbank " ${DBNAME}
|
---|
| 54 | ## Hier wird vorausgesetzt, dass der User eine Service-DB hat, die seinen Namen traegt
|
---|
| 55 | echo "DROP database ${DBNAME};" | psql -p 5432 -d ${DBUSER} -U ${DBUSER}
|
---|
| 56 | echo " "
|
---|
| 57 | echo "** Anlegen (leere) PostGIS-Datenbank"
|
---|
| 58 | createdb --port=5432 --username=${DBUSER} -E utf8 -T ${DBTEMPLATE} ${DBNAME}
|
---|
| 59 | echo " "
|
---|
| 60 | echo "** Anlegen der Datenbank-Struktur fuer PostNAS (alkis_PostNAS_0.7_schema.sql)"
|
---|
| 61 | psql $con -U ${DBUSER} < /data/konvert/postnas_0.7/alkis_PostNAS_0.7_schema.sql
|
---|
| 62 | echo " "
|
---|
| 63 | echo "** Anlegen der Datenbank-Struktur - zusaetzliche Schluesseltabellen"
|
---|
| 64 | ## Nur die benoetigten Tabellen fuer die Buchauskunft
|
---|
| 65 | psql $con -U ${DBUSER} < /data/konvert/postnas_0.7/alkis_PostNAS_0.7_keytables.sql
|
---|
| 66 | echo " "
|
---|
| 67 | echo "** Anlegen Optimierung Nutzungsarten (nutzungsart_definition.sql)"
|
---|
| 68 | psql $con -U ${DBUSER} < /data/konvert/postnas_0.7/nutzungsart_definition.sql
|
---|
| 69 | echo " "
|
---|
| 70 | echo "** Laden NUA-Metadaten (nutzungsart_metadaten.sql) Protokoll siehe log"
|
---|
| 71 | psql $con -U ${DBUSER} < /data/konvert/postnas_0.7/nutzungsart_metadaten.sql 1> log/meta.log
|
---|
| 72 | echo " "
|
---|
| 73 | echo "** Anlegen Post Processing (pp_definition.sql)"
|
---|
| 74 | psql $con -U ${DBUSER} < /data/konvert/postnas_0.7/pp_definition.sql
|
---|
| 75 | echo " "
|
---|
| 76 | echo "** Definition von Views (sichten.sql)"
|
---|
| 77 | psql $con -U ${DBUSER} < /data/konvert/postnas_0.7/sichten.sql
|
---|
| 78 | echo " "
|
---|
| 79 | echo "COMMENT ON DATABASE ${DBNAME} IS 'ALKIS - Konverter PostNAS 0.7';" | psql -p 5432 -d ${DBNAME} -U ${DBUSER}
|
---|
| 80 | echo " "
|
---|
| 81 | echo "** Berechtigung (grant.sql) Protokoll siehe log"
|
---|
| 82 | psql $con -U ${DBUSER} < /data/konvert/postnas_0.7/grant.sql 1> log/grant.log
|
---|
| 83 | echo " "
|
---|
| 84 | echo "***************************"
|
---|
| 85 | echo "** Ende Neue Datenbank **"
|
---|
| 86 | echo "***************************"
|
---|