Ошибка PostgreSQL при попытке создать расширение
ERROR: could not open extension control file "/usr/share/postgresql/9.1/extension/postgis.control": No such file or directory
Я получаю, когда пытаюсь CREATE EXTENSION postgis;
может кто-нибудь сказать мне, почему это так, и что я могу сделать, чтобы исправить это?
Ответы
Ответ 1
Ниже приведена рабочая установка postgis на Ubuntu 12.04 (Примечание: также проверено на 13.10)
echo "deb http://apt.postgresql.org/pub/repos/apt/ precise-pgdg main" | sudo tee /etc/apt/sources.list.d/postgis.list
wget --quiet -O - http://apt.postgresql.org/pub/repos/apt/ACCC4CF8.asc | sudo apt-key add -
sudo apt-get update
sudo apt-get install postgresql-9.3 postgresql-9.3-postgis-2.1 postgresql-client-9.3
sudo -u postgres psql -c 'create extension postgis;'
На основе документов в https://wiki.postgresql.org/wiki/Apt
Ответ 2
Вам нужно установить postgresql-9.1-postgis-scripts
. В Ubuntu или Debian вам нужно запустить следующую команду как root:
apt-get install postgresql-9.1-postgis-scripts
Это добавляет файлы, необходимые для создания расширений postgis
.
Ответ 3
Установка этого пакета сделала трюк для меня в моем ящике Linux Mint 16:
# install hstore postgresql extension.
sudo apt-get install postgresql-contrib
Ответ 4
Даниэль Верите близок к истине, но этого недостаточно. Пакет отсутствует postgresql-9.1-postgis-2.0
:
sudo apt-get install postgresql-9.1-postgis-2.0
Ответ 5
Предположительно, установленная версия postgis
- это 1.5.x, которая не является расширением, а как несколько SQL-скриптов, которые необходимо вручную применить для создания необходимых объектов SQL.
Также недостаточно пакета postgis
, он содержит только те вещи, которые не зависят от версии PG, вам нужно postgresql-9.1-postgis
(dpkg -L package-name
удобно проверять файлы, предоставленные каким-либо конкретным пакетом).
Как только пути установки известны, официальная установочная документация должна быть достаточно хорошей, чтобы настроить базу данных шаблонов.
Ответ 6
Просто решил.
Вам необходимо удалить postgis-1.5. Вы установили его в PostGIS 2.0. Как только вы установите postgis-2.0
, вы увидите исправленные библиотеки в каталоге расширений.
Перед установкой следует добавить правильный репозиторий (см. http://docs.pgrouting.org/2.0/en/doc/src/installation/index.html#ubuntu-debian). Используйте ppa:ubuntugis/ubuntugis-unstable
для PostGIS 2.0.
Попробуйте один из
apt-get remove postgis
apt-get remove postgresql-9.1-postgis
apt-get install postgresql-9.1-postgis
Я не смог удалить и установить из-за ошибки зависимостей.
После нескольких попыток я просто удалил postgresql-9.1-postgis
и apt-get предложил мне обновить его до 2.0.
Ответ 7
У меня была такая же проблема в моей установке Window 8.1.
Я решил это, просто используя Application StackBuilder
, который поставляется с Postgres и снова устанавливает PostGIS (несмотря на то, что не удалил его)
Теперь работает отлично!
Ответ 8
В C:\Program Files\PostgreSQL\9.4 я нашел uninstall-postgis-bundle-pg94x64-2.1.5-2.exe. Запуск этой исправленной проблемы, вызванный переустановкой PostgreSQL без предварительной деинсталляции и без установки PostGIS во второй раз. То, что происходит, когда вы более одного человека устанавливаете материал.
Ответ 9
Убедитесь, что вы установили этот
sudo apt-get install postgresql-9.3-postgis
Я столкнулся с такой же проблемой из-за отсутствия этого пакета.
Ответ 10
В 14.04 есть postgresql-9.3-postgis-scripts
, который содержит postgis.control
.
Ответ 11
Для этой проблемы CentOS необходим другой пакет. Для CentOS 6, если вы используете репозиторий pgdg yum в http://yum.pgdgrpms.org/9.3/redhat/, установите пакет postgresql93-contrib с помощью команды yum install postgresql93 -contrib.
Обновите и отредактируйте, если необходимо, для PostgreSQL 9.4.
Ответ 12
У меня был худший кошмар при установке Postgis 2.X на SLES 12 SP1. который не имеет совместимого пакета в zypper repo
Вот как это разрешено на моем экземпляре сервера Postgres с 9.4.X
пакеты Prerequsite, которые я установил до PostGis на основе ошибок
Proj 4 Download source cold, Build --> make install
install Gdal andjibson by adding zypper repo zypper addrepo http://download.opensuse.org/repositories/Application:Geo/SLE_12_SP1_Backports/Application:Geo.repo
zypper install gdal gdal-devel libjson-c-devel libjson
Установка Postgis
Download postgis source code (http://download.osgeo.org/postgis/source/postgis-2.3.0rc1.tar.gz)
Go to Postgis folder
./configure --with-pgconfig=/usr/lib/postgresql94/bin/pg_config --with-geosconfig=/usr/local/bin/geos-config
make
make install
теперь, если вы получили postgress DB и создали расширение postgis; он будет работать
Важная при настройке вы должны указать путь pg-config и путь геосети, и вы НЕ ДОЛЖНЫ включать "без растра", поскольку RASTER играет главную роль в создании расширения postgis
Ответ 13
эта работа для меня
SELECT PostGIS_full_version();
Чтобы создать postgisis запустите запрос в панели запросов
И для удаления postgis из вашей базы данных выполните следующий запрос
drop extension postgis
Ответ 14
если вы используете систему Windows, загрузите postgis.bundle.exe
и вручную установите в C:/(postGreSQLdirectory/version/ )
и все.