Я хотел бы создать новую базу данных в PostGIS, чтобы я мог загружать в нее вещи, пока используется текущая база данных. Согласно документам
Некоторые упакованные дистрибутивы PostGIS (в частности, установщики Win32 для PostGIS> = 1.1.5) загружают функции PostGIS в базу данных шаблонов с именем template_postgis. Если база данных template_postgis существует в вашей установке PostgreSQL, то пользователи и / или приложения могут создавать пространственно-разрешенные базы данных с помощью одной команды.
В моем случае это не так:
$ createdb -T template_postgis my_spatial_db
createdb: database creation failed: ERROR: template database "template_postgis" does not exist
В прошлом я возился с копированием первичной gis
базы данных, а затем с удалением содержимого всех таблиц. Должен быть лучший способ. Что вы делаете, если случайно уронили его?
postgis
postgresql
database
create
Стив Беннетт
источник
источник
Ответы:
Я не знаю, какую версию
PostGIS
вы используете, но при>2.0
первом входе в систему я используюpsql
:psql -U postgres
Затем я создаю базу данных:
CREATE DATABASE example_gis;
Затем я перехожу в эту базу данных:
\connect example_gis;
И тогда я бегу порекомендовать:
CREATE EXTENSION postgis;
Это создает все пространственные функции и типы объектов в этой базе данных.
источник
CREATE EXTENSION POSTGIS
а неCREATE EXTENSION postgis
.По ссылке @ novicegis у меня с Postgis 1.5 это сработало:
(Связанные инструкции не включают расширение «hstore».)
источник
Вы должны создать "template_postgis" в консоли. Все ошибки отображаются в консоли.
Вы можете использовать эту инструкцию: http://linfiniti.com/2012/05/install-postgis-2-0-on-ubuntu/ если вы хотите создать "template_postgis".
Например, я делаю:
Я получил это сообщение при установке postgis с ошибками
источник