PostGIS veritabanını ayarlama ve Windows'ta QGIS'de açma?


15

QGIS'li kullanıcılar tarafından erişilecek bir PostGIS veritabanı kurmak için kılavuzları takip etmeye çalıştım, ancak şu anda ilerlemek için yeterince anlayamıyorum?

Benim durumum; Ben yeşil nesnelerin (ağaçlar gibi) sayısallaştırılması ve bir sokak listesi, görüntü dosyaları ile öznitelik tablosuna bağlama gibi sorguları çalıştırmak için bir PostGIS veritabanı oluşturmak için sorumlu bir stajyer.

Ben şu anda ve gelecekteki coğrafi referanslı nesneler (her tür için farklı bir şekil dosyası yapıştırılacak / oluşturulacaktır) "şekil dosyası iskeletleri" (şu anda hiçbir nesne ile boş, sadece öznitelik çerçevesi "var. veritabanı?

Durum;

Her dosya için bir yedekleme sunucusu ile kendi LAN ve internet bağlantımız ile ayrı bir binada çalışıyoruz. Yerel dosya erişimimiz ve internet bağlantısı üzerinden paylaştığımız dosyalarımız var

Veritabanının kurulumu, yönetici tarafından PostGIS ve PostgreSQL'in (postgresql-9.6.2-3-windows-x64 & postgis-bundle-pg96x64-setup-2.3.2) en son .exe yürütme dosyaları kullanılarak uzaktan erişim yoluyla gerçekleştirilmiştir. -1) 64-bit makinem için. Yönetici bana giriş bilgilerini içeren bir metin dosyası sağladı. Buradaki eğitim kılavuzları Ubuntu ile uğraştıklarından oldukça kafa karıştırıcı.

Yazdığım giriş bilgilerini nerede kullanacağımı bilmediğim için takıldım? PgAdmin kullanmam gerektiğini varsayıyorum?


PostGIS'i Windows'a bu şekilde yüklüyorum - basit bir kurulumda get.enterprisedb.com/docs/… o zaman QGIS ayarladığınız kullanıcı adı ve şifre ile kolayca bağlanacaktır.
Mapperz

1
Veritabanınızla çalışmak için pgAdmin 3'ü yüklemenizi kesinlikle tavsiye ederim. Şimdi bir pgAdmin4 var, aynı zamanda onu yüklemek için bakabilirsiniz, hangisini tercih ettiğinizi görün.
Martin Hügi

Bekle, o zaman QGIS'e nereye gideceğim ve yığın oluşturucusuna hangi dosyaları yüklemeliyim? Düzenleme nvm: şimdi bulundu Hangi yerel ana bilgisayar ve hizmet girişleri yapmak gerekir bulmanız gerekir.
ThunderSpark

Postgis, gerekli 'sunucuyu' yerel olarak yükleyecektir, bu veritabanı çalışmanın yoludur - daha sonra sunucu üzerinden 'live' (yerel ana bilgisayar) üzerinden 'canlı' bağlanmak için QGIS kullanırsınız.
Mapperz

Yanıtlar:


24

Yöneticiniz veritabanını başarıyla kurmuş ve size ihtiyacınız olan ayrıntıları sağlamış gibi geliyor. Yükleme sırasında da PostGIS'i yapılandırmış olabilirler, ancak değilse, bu adımları uygularken bunu kontrol edebilirsiniz.

Öncelikle yöneticinizden pgAdmin'i yüklemesini isteyin, bu, PostgreSQL veritabanınıza grafik bir arayüzle erişmenizi sağlar.

https://www.pgadmin.org/download/windows.php

PgAdmin'i açın

PostgreSQL'iniz kurulmuşsa;

  • bilgisayarınızda localhost olarak görünecek, ona bağlanmak için 'PostgreSQL (sürüm no.) (localhost: 5432)' e çift tıklayabilmelisiniz.

resim açıklamasını buraya girin

  • Ağa yüklendiyse, ana bilgisayar adresini bildirmek için yöneticinize ihtiyacınız olacaktır (daha önce sahip değilseniz), Dosya> Sunucu Ekle'ye gitmeniz ve alanları doldurmanız gerekir;

resim açıklamasını buraya girin

Bağlandıktan sonra şu adrese gidin: Edit > New Object > New Database

Bir isim ver. Sunucu listenizde görünür.

Bağlanmak için çift tıklayın. ExtensionsListede olup olmadığını kontrol edin postgis.

Değilse;

SQL simgesine tıklayarak SQL penceresini açın

resim açıklamasını buraya girin

ve yaz

CREATE EXTENSION PostGIS

'Sorguyu Yürüt'e basın - bu simge resim açıklamasını buraya girin

Listedeki veritabanına sağ tıklayın ve bağlantıyı kesin ve ardından yeniden bağlanın. Uzantılar şimdi postgislistelenmiş olmalıdır .

Yeni bir Grup Rolü ayarlayabilir ve bu noktada oturum açma rolü kurabilirsiniz, sanki güvenlik gereksinimlerini ve ağdaki kullanıcılarınızı vermeniz gerekir.

Ya da sadece test etmek istiyorsanız, varsayılan rolle devam edebilirsiniz postgres.

Farklı Gruplar, yönetici ve kullanıcı gibi farklı izinlere sahip olacak şekilde ayarlanabilir. Daha sonra kullanıcı oturumları oluşturulabilir ve kullanıcıya vermek istediğiniz izin düzeyine uyan herhangi bir gruba atanabilir ya da tüm tablolara yönetici için ve yalnızca bazılarına vb. Erişim verebilirsiniz. Bir yönetici grubuna ihtiyacınız olmayabilir.

SQL penceresini açın ve bu sorguları yürütün;

CREATE ROLE user_group_name NOSUPERUSER INHERIT NOCREATEDB NOCREATEROLE NOREPLICATION;
CREATE ROLE admin_group_name NOSUPERUSER INHERIT NOCREATEDB NOCREATEROLE NOREPLICATION;

GRANT user_group_name TO admin_group_name

GRANT ALL ON DATABASE database_name TO admin_group_name;

Bir yönetici girişi oluşturun (postgres / superuser olarak giriş yapın)

CREATE ROLE admin_name LOGIN PASSWORD 'their_password' NOSUPERUSER INHERIT NOCREATEDB NOCREATEROLE NOREPLICATION;
GRANT admin_group_name TO admin_name;

Bir kullanıcı girişi ayarlayın (postgres / süper kullanıcı olarak giriş yapın)

CREATE ROLE user_name LOGIN PASSWORD 'their_password' NOSUPERUSER INHERIT NOCREATEDB NOCREATEROLE NOREPLICATION;
GRANT users_group_name TO user_name;

QGIS'i açın. Yeni bir proje başlatın.

Soldaki araç çubuğundaki 'PostGIS katmanı ekle' simgesini tıklayın.

resim açıklamasını buraya girin

'Yeni' bağlantıya tıklayın ve bağlantı ayrıntılarını yukarıdaki gibi girin (veritabanınız yerel ise ana bilgisayar sadece localhost).

Bağlantıyı bu noktada test edebilirsiniz. Kullanıcı adı ve şifre alanına göre 'Kaydet' kutularını işaretlerseniz, kimlik bilgilerinizi profilinize kaydeder, böylece her defasında girmeniz gerekmez. Güvenlik ihtiyaçlarınıza bağlı olarak size kalmış.

Tamam'a basın ve 'PostGIS tablo penceresi ekle'yi kapatın

Ardından Database > DB Manager > DB Manager (Son QGIS sürümlerinde DB Manager standart olarak yüklüdür, önceki sürümlerde DB Manager eklentisini yüklemeniz gerekir)

PostGIS'i seçin. Varsayılan genel şema gösterilecektir. Herkese açık olanı kullanmak yerine yeni bir şema oluşturmanız gerekir gibi görünüyor.

Şema> Şema oluştur - Bir ad verin ( no_spaces_or_use_underscores)

Oluşturulduktan sonra, pgAdmin, bağlantıyı kes, yeniden bağlan seçeneğine giderek kontrol edebilirsiniz. Yeni şema şimdi orada olmalı.

Veritabanındaki bir tabloya bir şekil dosyası yüklemek için QGIS DB Manager'a geri dönün.

İçe aktarmak istediğiniz şekil dosyasına göz atmak için aşağı oku 'Katmanı / dosyayı içe aktar' seçeneğini tıklayın. Göz atmayı açmak için `` ... `` simgesini tıklayın.

Tabloya bir ad verin ( again_no_spaces_or_use_underscores)

seçmek Primary key

seçmek Geometry Column

SRIDCRS kodunu seçin ve girin

Şimdilik diğer her şeyi bırak ve OK.

Büyük bir veri kümesiyse, özellikle bir ağ / internet bağlantısında biraz zaman alabilir

Yine pgAdmin'e geri dönebilir, bu kez yenile düğmesine bastığınızda yeni tablo görünecektir Tables.

Grup rolleri ve kullanıcılar ayarladıysanız, örneğin şemaya erişim izni vermeniz gerekir;

GRANT ALL ON SCHEMA schema_name TO admin_group_name;
GRANT USAGE ON SCHEMA schema_name TO user_group_name;

Geri QGIS ve 'PostGIS katmanı ekle'. Bu kez Bağlan'ı seçin. Şemayı açın ve tabloyu vurgulayın ve 'Ekle'yi tıklayın; proje alanınızda açılacaktır.


Görünüşe göre PQadmin 4'ü yüklediler, program istediğinde şifreyi sağlıyorum ama "postgres // * communityname123" ana bilgisayar adını adrese çeviremedim: Bilinmeyen sunucu hatası ". Peki burada ne yapmalıyım, unutmayın ki PQadmin4 ile çalışıyorum ve sadece bir sunucu PostGre SQL 9.6 var. Bu yüzden burada yükledikleri PostGre QSL sunucusu olduğunu varsayacağım, ancak adresin yapılandırılmasında yanlış bir şeyler yapabilirler. Bu yüzden onları burada bilgilendirmem gerekiyor mu yoksa yanlış bir şey mi yapıyorum? * = sensör.
ThunderSpark

1
Ana bilgisayar adı olarak "localhost" u deneyin, sadece bunu içeri veya dışarı doğru yönetmek için. Ardından değilse, yöneticinizden postgres'in ağda bulunduğu yolu isteyin, size bunu verebilmelidirler. Muhtemelen sadece sözdizimi veya adreste bir şey eksik.
Martin Hügi

Çalıştığınız için teşekkür ederiz, kullanıcı adını süper kullanıcı, Postgres ve benzeri olarak değiştirerek hata yaptıkları ortaya çıkıyor. Talimatın geri kalanını takip edeceğim ve işe yarayıp yaramadığını göreceğim. Teşekkürler martin.
ThunderSpark

Oke çalışır Martin, lütfen burada çalışan bir grubun veritabanını nasıl oluşturduğunun geri kalanını ekleyebilir misiniz?
ThunderSpark

Hızla bazı komut dosyaları ekledi, benim öğle tatilinde beklemek zorunda kaldı, bu yüzden biraz koştu. Çalışmalılar.
Martin Hügi

2

Projenizin taşınabilir bir postgres / postgis kurulumu için yeterli olacağı görülüyor. Bunu bir süre önce öğrencilerim için yaptım, böylece postgresl klasörünü bir usb çubuğa kopyalayabilir ve her Windows PC'de kullanabilirler:

  1. Postgresql dosyasını zip dosyası olarak indir
  2. Sıkıştır
  3. Sisteminize göre postgis'i (postgis-bundle-pg96-2.3.1x32.zip veya x64) indirin
  4. Sıkıştırın ve postgresql klasörüne kopyalayın
  5. Postgres'i taşınabilir bir sürüm olarak "yüklemek" için bu açıklamayı kullanın: http://www.postgresonline.com/journal/archives/172-Starting-PostgreSQL-in-windows-without-install.html
  6. İsteğe bağlı olarak pg_hba.conf dosyasını değiştirin ve "tüm 127.0.0.1/32 güvenini barındır" ı ekleyin / geçersiz kılın - bu, şifrenizi kontrol etmeden PC'nizden veritabanına erişime izin verir, bu durumda tamamdır, ancak üretim ortamlarında hareketsizdir
  7. Pgadmin3 kullanarak veritabanına bağlanma
  8. Yeni bir veritabanı oluşturun ve "CREATE EXTENSION postgis;"

Şimdi postgesql / postgis ile çalışabilmeli ve PC'nizdeki db'ye erişebilmelisiniz. Bunun, eğitim amaçlı çalışan ancak üretim / ağ ortamında çalışan hızlı ve kirli bir çözüm olduğunu lütfen unutmayın.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.