Saya telah menginstal PostgreSQL 9.x dan PostGIS 1.5 / 2.0 beberapa kali dan tidak pernah mengalami masalah ini.
Saya baru saja menjalankan server CentOS 6.3 baru dan menjalankan dan saya memiliki Postgres 9.3 berfungsi seperti yang diharapkan. aku harus lari
yum install postgis2_93
dan saya bisa melihat file di
/usr/pgsql-9.3/share/contrib/
Namun, ketika saya berlari
CREATE EXTENSION postgis;
Saya menerima
ERROR: could not open extension control file "/usr/pgsql-9.3/share/extension/postgis.control": No such file or directory
tutorial ( # 1 , # 2 ) yang saya gunakan tidak menunjukkan langkah apa pun antara menginstal PostGIS dan membuat ekstensi.
Apa yang saya lewatkan?
postgresql
postgis-2.0
centos
kuda yang hilang
sumber
sumber
find /usr -name postgis.control
dan tidak ada. Saya dapat melihat beberapa file di share / contrib; Namun, postgis.control tidak ada di antara mereka ... apa yang Anda sarankan saya lakukan? menunggu perbaikan, buat sendiri, sesuatu yang lain?postgis-2.1.so
ada dalam/lib
apakah ini berarti saya bisa membuat file postgis.control saya sendiri?Jawaban:
Jika Anda dapat menemukan file postgis.sql, Anda dapat menjalankannya ke dalam basis data Anda (dan file spatial_ref_sys.sql) untuk secara spasial membuat basis data Anda. Laporkan file kontrol yang hilang ke pembuat paket, itu masalah besar.
sumber
Saya baru saja mengalami masalah yang sama pada Ubuntu Server 14.04. Saya menginstal
postgis
ekstensi dari repositori Ubuntu resmi menggunakanapt-get install postgis
.Kemudian,
find /usr -name postgis.control
tidak mengembalikan hasil apa pun.Alasannya
extension/postgis.control
tidak diinstal karena postgis-skrip tidak.Solusinya adalah menginstalnya.
Pada distro seperti debian:
Manajer paket aptitude akan secara otomatis menentukan versi paket yang benar untuk diinstal. Postgis-doc juga akan diinstal.
Anda dapat memeriksa keberhasilan operasi dengan menjalankan perintah berikut:
Di server saya, sekarang kembali:
Anda sekarang dapat mengaktifkan ekstensi pada basis data apa pun di server postgres Anda:
CREATE EXTENSION postgis;
Skema publik Anda sekarang berisi semua objek dan fungsi postgis.
sumber
Di Ubuntu 14.04 Anda juga perlu menginstal
postgresql-9.3-postgis-scripts
paket. Setelah saya berlariSaya kemudian berhasil menjalankan
dalam database saya untuk menginisialisasi PostGIS.
sumber
Saya memiliki masalah yang sama, saya hanya menjalankan perintah
Saya menggunakan Ubuntu 18.04
sumber
Sumber lain yang menyebabkan masalah adalah bundel PostGIS yang hilang, ini dapat didefinisikan dalam menu instal atau dalam kasus Anda sesudahnya. Oleh karena itu, buka windows start, pergi ke PostgreSQL dan mulai Application Stack Builder . Kemudian pilih PostgreSQL, dengan itu kemungkinan aplikasi dimuat. Untuk bundel PostGIS Anda hanya perlu menginstal ekstensi yang sesuai dengan sistem operasi Anda (32- atau 64bit), cukup langsung ke Ekstensi Spasial .
Bagaimanapun di sini langkah-langkah yang disarankan:
Sekarang Anda dapat menambahkan ekstensi dengan
CREATE EXTENSION postgis;
di SQL Query Anda.sumber
Saya mengalami masalah yang sama, saya pikir masalahnya adalah bahwa paket postgis2_93 tidak diinstal di tempat yang diharapkan seperti yang diharapkan postgresql. Anda dapat mencoba menggunakan repo lain, yang mungkin memberi Anda tempat yang benar. Atau Anda dapat mencari untuk menambahkan ekstensi secara manual dengan menentukan tempat. Dalam kasus saya, file tersebut ada di /usr/pgsql-9.4/
sumber
Saya mengalami mimpi terburuk saya ketika menginstal Postgis 2.X pada SLES 12 SP1. yang tidak memiliki paket yang kompatibel di repo zypper
Ini adalah bagaimana mengatasinya pada server Postgres saya yang menjalankan 9.4.X
Paket Prerequsite yang telah saya instal sebelum PostGis berdasarkan kesalahan
Menginstal Postgis
Unduh kode sumber postgis ( http://download.osgeo.org/postgis/source/postgis-2.3.0rc1.tar.gz )
Buka folder Posting gis ./configure --with-pgconfig = / usr / lib / postgresql94 / bin / pg_config --with-geosconfig = / usr / local / bin / geos-config make make install
sekarang jika Anda kebagian postgress dan membuat ekstensi postgis; akan bekerja
Penting saat mengkonfigurasi Anda harus menentukan path pg-config dan path geosconfig dan Anda TIDAK HARUS memasukkan "tanpa Raster" karena RASTER memainkan peran utama dalam menciptakan ekstensi postgis
sumber
Untuk Ubuntu 16.04 jalankan perintah ini:
sudo apt-get install postgis postgresql-9.6-postgis-2.3-scripts
perhatikan bahwa Anda harus menentukan nomor versi Anda untuk postgresql (9.6 dalam kasus saya) dan postgis (2.3 dalam kasus saya).
sumber
Jika Anda menggunakan minuman, hapus instalasi PostGIS dan pasang kembali. Ini akan membuat file ekstensi.
sumber
brew ls --verbose postgis
Pada beberapa distribusi ekstensi dikemas dalam paket postgresql-contrib. Hal ini tentu berlaku pada RedHat / CenOS di mana ekstensi berada di postgresql-contrib di mana xx adalah magor dan nomor rilis minor tanpa berhenti penuh (postgresql95-contrib untuk postgres 9.5).
sumber
Bagi saya, menggunakan Fedora 25 dan hal 9.5, itu berhasil ketika saya melakukan perubahan berikut:
Instal paket yum postgis
$ yum instal postgis2_95
Unduh paket postgis scripts .deb
Ekstrak dan salin direktori 'contrib' dan 'ekstensi' di ekstrak usr / share / postgresql / 9.5 ke jalur yang sama di pgsql Anda (mungkin mengubah izin ke).
Mulai ulang server
sumber
Dalam kasus saya (Linux Mint 18.1 Serena) saya harus menghapus
posgresql-9.5
danpostgis
baru diinstal dari repositori default.Dan instal versi 9.6 dari repositori PosgreSQL :
Saya tidak yakin, versi ada hubungannya dengan
postgis.control
file yang hilang . Tapi saya tetap menginginkan versi 9.6.sumber