Không thể kết nối Postgis từ QGIS 1.8.0


8

Tôi đã cài đặt PostgreSQL và PostGIS trên máy tính xách tay của mình (HĐH Win 7 64 bit). Tôi đang chạy QGIS 1.8.0 trên máy của mình.

Khi tôi đang cố gắng kết nối Postgis, tôi gặp lỗi kết nối không thành công thì tôi đã thử các cách sau:

Chi tiết:

Cổng: 5433 Tên người dùng: postgres Mật khẩu: postgres

  1. Tôi đã kiểm tra tệp pg_hba.conf (Tất cả cài đặt mặc định)

  2. Khởi động lại dịch vụ PostgreSQL và thử

  3. Tôi đã cài đặt lại PostreQuery và gặp lỗi tương tự.

  4. Đã thử sử dụng các trường trống trong khi kết nối vẫn gặp lỗi. (Không chắc chắn những gì cần đưa vào trường dịch vụ..được sử dụng postgres và postgresql)

  5. Tường lửa của tôi bị vô hiệu hóa.

  6. Cơ sở dữ liệu PostgreSQL (phiên bản 9.2) được cài đặt trên máy cục bộ của tôi cũng có postgis (phiên bản 2.0.3-2) được cài đặt trên máy của tôi và cả hai đều dành cho thiết lập 64 bit.

7. Tôi có nên thử phiên bản thấp hơn của Postgresql với qGIS không ??

Ảnh chụp màn hình 1 ảnh chụp màn hình 2

Nghiên cứu trên Google cũng và tìm thấy các lỗi tương tự liên quan đến vấn đề kết nối (không chắc chắn)


Tôi có postgresql 9.1 và postgis 2.0 trên Linux và đang chạy. Có lẽ bạn thực sự nên hạ cấp postgresql. Kiểm tra khả năng QGIS của bạn để kết nối postgis tại đây: host: gis-lab.info; cảng 5432; cơ sở dữ liệu: osm_shp; ssl: vô hiệu hóa; tên người dùng: khách; mật khẩu: khách. Hãy kiên nhẫn - có rất nhiều dữ liệu. Không biết phiên bản pogtresql / gis nào ở đó.
SS_Rebelious

Bạn đã cài đặt postgis vào cơ sở dữ liệu của bạn hoặc tạo nó từ mẫu postgis chưa? Nếu không, kết nối của bạn sẽ thất bại.
gsherman

Mục pg_hba.conf cho "cục bộ" nói gì? Có phải nó đang sử dụng ngang hàng, nhận dạng hoặc md5 để xác thực?
SaultDon

@gsherman Tôi đã cài đặt postgis vào cơ sở dữ liệu của mình và trong khi chỉ cài đặt tùy chọn mặc định đã được chọn
Sunil

@SaultDon Đó là md5
Sunil

Câu trả lời:


4

Tôi không chắc nó có vấn đề gì không, nhưng đối với tôi, Postgis 1.5 và Postgres 9.0 (x86) đang nói chuyện với QGIS 1.8.0 mà không gặp vấn đề gì.

QGIS vẫn là 32 bit, ngay cả trên các máy Windows 7 64 bit. Hãy dùng thử phiên bản x86 và phiên bản postgis cũ.


Cảm ơn đã trả lời Nó hoạt động hoàn hảo trên máy của tôi và tự hỏi rằng sự cố này sẽ được khắc phục trong phiên bản 2.0 sắp tới. Tôi không thể tìm thấy tài liệu đó sẽ kiểm tra khả năng tương thích của qgis 1.8.0 và PostgreQuery .. một lần nữa :)
Sunil

1
Hỗ trợ 64 bit vẫn nằm trong danh sách mong muốn, bởi vì tất cả các gói phụ thuộc phải được biên dịch với hỗ trợ 64 bit. Tôi rất vui vì 32 bit vẫn hoạt động ;-)
AndreJ

4

Bạn phải xác nhận cơ sở dữ liệu là PostGIS chứ không phải PostGres

Truy cập pgAdmin và xem cơ sở dữ liệu của bạn. Mở và xem DB và bên cạnh "Lược đồ", sẽ có một số lược đồ có sẵn. Nếu nó nói "Lược đồ (1)" thì có lẽ chỉ có DB PostGres. Bên trong "Lược đồ" cần có một mục cho "cấu trúc liên kết". Nếu không có cấu trúc liên kết thì đó không phải là cơ sở dữ liệu không gian (PostGIS) và do đó sẽ không hiển thị trong QGIS.


2

Tôi đã có vấn đề này gần đây là tốt. Những gì làm việc cho tôi là:

  1. để trống trường chủ. "localhost" đề cập đến việc kết nối với máy cục bộ của bạn thông qua IP, điều mà tôi không tin là những gì bạn muốn.
  2. hãy tìm trong tập tin postgresql.conf của bạn để tìm

    listen_addresses = '*'      # what IP address(es) to listen on;

    và đảm bảo rằng đó là '*', điều này sẽ đảm bảo nó có thể tìm thấy kết nối cục bộ của bạn

  3. kiểm tra tệp pg_hba.conf của bạn và đảm bảo quyền xác thực của bạn được đặt chính xác cho mục nhập "cục bộ"

Chỉnh sửa: Đây là một liên kết đến câu hỏi tương tự của tôi trên Quản trị viên Cơ sở dữ liệu.


Tôi đã thử theo cách của bạn nhưng nó không hoạt động: (
Sunil

1
Cảm ơn các liên kết. Tôi sẽ xem xét nó vẫn tự hỏi tại sao nó không kết nối..BTW Tôi đã giải quyết vấn đề bằng cách cài đặt phần mềm 32 bit theo câu trả lời @Andre Joost .. cảm ơn vì đã cung cấp thêm thông tin :)
Sunil

2

Tôi không biết nếu điều này sẽ giúp nhưng ....

Tôi chỉ mới bắt đầu với điều này nhưng tôi thấy rằng "localhost" sẽ không giải quyết trên PC của tôi có cấu hình / phiên bản tương tự như của bạn. Tôi đã thay thế nó bằng 127.0.0.1 và tôi đã kết nối thành công.


Cảm ơn câu trả lời. Tôi đã thử cái đó nhưng nó không hoạt động.
Sunil

2

Câu trả lời là trong một bài viết 5 năm sau, sửa đổi lần cuối 4 năm sau! Tôi tìm thấy nó liên quan đến "Vé QGIS # 930". Những gì bạn PHẢI làm: CHỈ kiểm tra tên người dùng và mật khẩu TIẾT KIỆM trong hộp thoại xác định kết nối của bạn. ĐÓ LÀ TẤT CẢ. Nó làm việc đột ngột cho tôi và tôi khá chắc chắn sẽ làm cho bạn. Env của tôi: Windows 7 Pro / QGIS 1.8 / PostgreSQL 9.2 / PostGIS 2.0.2 / Tất cả đều 64 bit.


cảm ơn câu trả lời Tôi sẽ xem xét nó và cho bạn biết..cảm ơn
Sunil

1

Bạn sử dụng cổng 5433, nhưng cổng tiêu chuẩn là 5432. Có thể kiểm soát nó.


Bạn có thể mở rộng dựa trên điều này như một câu trả lời bởi vì nó có vẻ giống như một nhận xét / đề xuất hơn là một cái gì đó được đưa ra với sự tự tin.
PolyGeo

@PolyGeo Thật ra tôi đã thử những thứ đó trước đây & tôi đã thử cách giải quyết của Andre Joost và nó hoạt động hoàn hảo với tôi :) Vì vậy, nếu có thể hãy bảo vệ câu hỏi này.
Sunil
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.