Chciałbym utworzyć nową bazę danych w PostGIS, aby móc ładować do niej rzeczy podczas korzystania z bieżącej bazy danych. Według dokumentów
Niektóre spakowane dystrybucje PostGIS (w szczególności instalatory Win32 dla PostGIS> = 1.1.5) ładują funkcje PostGIS do bazy danych szablonów o nazwie template_postgis. Jeśli baza danych template_postgis istnieje w instalacji PostgreSQL, użytkownicy i / lub aplikacje mogą tworzyć bazy danych z włączoną przestrzennie za pomocą jednego polecenia.
W moim przypadku wydaje się, że tak nie jest:
$ createdb -T template_postgis my_spatial_db
createdb: database creation failed: ERROR: template database "template_postgis" does not exist
W przeszłości miałem problemy z kopiowaniem podstawowej gis
bazy danych, a następnie usuwaniem zawartości wszystkich tabel. Musi być lepszy sposób. Co robisz, jeśli przypadkowo go upuścisz?
postgis
postgresql
database
create
Steve Bennett
źródło
źródło
Odpowiedzi:
Nie wiem, jakiej wersji
PostGIS
używasz, ale na>2.0
Najpierw loguję się za pomocąpsql
:psql -U postgres
Następnie tworzę bazę danych:
CREATE DATABASE example_gis;
Następnie przechodzę do tej bazy danych:
\connect example_gis;
A potem wykonuję polecenie:
CREATE EXTENSION postgis;
Tworzy to wszystkie funkcje przestrzenne i typy obiektów w tej bazie danych.
źródło
CREATE EXTENSION POSTGIS
a nieCREATE EXTENSION postgis
.Po linku @ novicegis zadziałało to dla mnie z postgis 1.5:
(Powiązane instrukcje nie zawierały rozszerzenia „hstore”).
źródło
Powinieneś utworzyć „template_postgis” w konsoli. Wszystkie błędy są wyświetlane w konsoli.
Możesz użyć tej instrukcji: http://linfiniti.com/2012/05/installing-postgis-2-0-on-ubuntu/, jeśli chcesz utworzyć „template_postgis”.
Na przykład:
Otrzymałem ten komunikat, gdy zainstalowałem Postgis z błędami
źródło