Saya mencoba menggunakan ogr2ogr untuk mengunggah shapefile ke instalasi PostGres jarak jauh. Ketika saya menjalankan perintah ini:
celenius:~ celenius$ ogr2ogr -f PostgreSQL PG:"host=255.34.00.00 user=postgres dbname=mydb password=***" Dropbox/data/roads.shp;
Saya mendapat pesan kesalahan berikut:
Unable to find driver `PostgreSQL'.
The following drivers are available:
-> `ESRI Shapefile'
-> `MapInfo File'
-> `UK .NTF'
...
-> `SVG'
-> `CouchDB'
-> `Idrisi'
-> `ARCGEN'
-> `SEGUKOOA'
-> `SEGY'
(Saya menghapus beberapa driver karena mereka tidak relevan). Apakah ada cara agar saya dapat memperbarui ogr2ogr untuk memasukkan PostgreSQL? Saya menggunakan Mac dengan OS 10.7.4
brew install gdal --with-postgresql
Selamatkan dirimu dari rasa sakit dan gunakan binary / frameworks Kyngchaos untuk OSX .GDAL-Complete adalah yang kamu cari.
Pilihan lain adalah menggunakan HomeBrew .
sumber
which ogrinfo
kembali/usr/local/bin/ogrinfo
. Saya menginstal GDAL dan yang lainnya dari KyngChaos sebelum menginstal QGis.dengan asumsi Anda telah mengkompilasi gdal dari sumber, cukup sertakan --with-pg = / path / ke / pg_config ketika Anda mengkonfigurasi gdal.
EDIT: Catatan yang
pg_config
harus di direktori yang sama dengan binari PostgreSQL Anda yang lain, sepertipsql
, dll. Juga perhatikan, detail dari jawaban user259060 di bawah ini: Anda harus memverifikasi bahwa versi postgresql-server-dev yang sesuai telah diinstal (misalnya pada penggunaan Ubuntuapt list --installed | grep postgresql-server-dev
jika tidak ditemukan gunakanapt-cache search postgresql-server-dev
dan instal paket yang sesuai dengansudo apt-get install postgresql-server-dev
).sumber
./configure
output, tetapi mencobaogr2ogr -f PostgreSQL
memberiERROR 1: Unable to find driver 'PostgreSQL'
. Juga, tidak adaPostgreSQL
dalamogrinfo --formats
Saya mendapat pesan yang sama saat di Windows.
Itu mengeluh tentang jenis kutipan (tunggal vs ganda) yang saya gunakan di sekitar string koneksi. Mengalihkan harga memperbaiki masalah.
sumber
Ada kemungkinan bahwa Anda mungkin melihat sesuatu seperti "dukungan PostgreSQL: tidak", meskipun Anda telah mengkonfigurasi sumber menggunakan "--with-pg = / path / ke / pg_config" ... dalam kasus itu, jalankan sudo apt- dapatkan instal postgresql-server-dev-all lalu coba lagi.
sumber
Dari membaca dokumen ogr2ogr Vector format , sepertinya Anda perlu menginstal pustaka klien PostgreSQL (libpq).
Pertanyaan serupa ini tampaknya memberikan beberapa wawasan untuk menyelesaikan masalah yang sama, hanya dengan binding Python.
sumber