Thiết đặt để cho phép các PC khác kết nối với cơ sở dữ liệu PostgreSQL (phiên bản Windows)

Trang Cập Nhật :
Ngày tạo trang :

Môi trường hoạt động

PostgreSQL
  • PostgreSQL 15
Windows (Máy chủ)
  • Máy chủ Windows 2019
Windows (Máy khách)
  • cửa sổ 11

Điều kiện tiên quyết

Windows
  • Máy chủ Windows 2019
  • Máy chủ Windows 2016
  • Các phiên bản khác có thể hoạt động, nhưng không được hỗ trợ chính thức.

tường lửa

Trong Windows, tường lửa ngăn chặn các kết nối khác ngoài cổng tiêu chuẩn. Nó phải được cấu hình để có thể kết nối trên cổng để kết nối với PostgreSQL.

Sau khi đăng nhập vào môi trường Windows phía máy chủ, hãy nhập "tường lửa" từ menu bắt đầu và chọn Mở Tường lửa của Bộ bảo vệ Windows với Bảo mật Nâng cao.

Khi màn hình mở ra, chọn "Inbound Rules" từ menu bên trái và nhấp vào "New Rule..." từ menu bên phải.

Đối với Loại quy tắc, chọn Cổng.

Đối với Giao thức và cổng, chọn TCP làm giao thức. Đối với cổng, nhập mặc định là 5432. Nếu bạn đã chỉ định một số cổng khác trong cài đặt PostgreSQL của mình, hãy nhập số cổng đó.

Đối với "Hành động", chọn "Cho phép kết nối".

Trong "Hồ sơ", chọn "Miền" và "Riêng tư". Tôi nghĩ rằng không chắc rằng bạn sẽ cho phép một cơ sở dữ liệu được truy cập trong một môi trường "công cộng" sẽ cho phép những người không xác định truy cập vào nó.

Nhập tên và mô tả tùy chọn. Vui lòng nhập để dễ hiểu mục đích mở cổng.

Sau khi được thêm vào, nó sẽ xuất hiện trong danh sách.

postgresql.conf

Kiểm tra cài đặt trong postgresql.conf. Tôi không nghĩ bạn cần phải thay đổi nó trong phiên bản 15.

Có một tệp ở vị trí sau, vì vậy hãy mở nó bằng ứng dụng notepad. Vui lòng kiểm tra đường dẫn vì nó thay đổi tùy thuộc vào phiên bản.

C:\Program Files\PostgreSQL\15\data\postgresql.conf

listen_addresses Tìm tham số được gọi. Bạn không cần phải thay đổi nó nếu nó được đặt như sau:

listen_addresses = '*'

pg_hba.conf

Theo mặc định, cơ sở dữ liệu chỉ có thể được truy cập từ môi trường cục bộ.

Có một tệp ở vị trí sau, vì vậy hãy mở nó bằng ứng dụng notepad. Vui lòng kiểm tra đường dẫn vì nó thay đổi tùy thuộc vào phiên bản.

C:\Program Files\PostgreSQL\15\data\pg_hba.conf

Có khả năng bạn có thể mắc lỗi trong việc sửa nó, vì vậy vui lòng sao chép và sao lưu tệp trước khi thay đổi đề phòng.

Nếu bạn cuộn xuống dưới cùng, bạn sẽ tìm thấy các dòng sau: Điều này chỉ ra rằng IPv4 chỉ có thể được truy cập cục bộ.

# TYPE  DATABASE        USER            ADDRESS                 METHOD
  :
host    all             all             127.0.0.1/32            scram-sha-256
  :

Đặt ĐỊA CHỈ này thành một hoặc một phạm vi để có thể truy cập nó từ các PC khác. Giá trị bạn đặt tùy thuộc vào mạng bạn đang xây dựng. Nếu bạn không chắc chắn, vui lòng 0.0.0.0/0 cho phép tất cả có hoặc samenet nhập để cho phép tất cả phạm vi của cùng một mạng với máy chủ.

Ví dụ cấu hình

# TYPE  DATABASE        USER            ADDRESS                 METHOD
  :
host    all             all             192.168.0.0/24          scram-sha-256
  :

Khởi động lại dịch vụ

pg_hba.conf Các tệp cấu hình này chỉ được đọc khi PostgreSQL được khởi động, vì vậy bạn cần khởi động lại dịch vụ. Nhân tiện, nó được tải khi PostgreSQL khởi động, vì vậy nếu bạn khởi động lại Windows, nó sẽ được tải tại thời điểm đó.

Sau khi mở menu bắt đầu, nhập "dịch vụ" để khởi chạy nó.

Tìm và chọn "postgresql-x64-15 - PostgreSQL Server 15" từ danh sách giữa. Lưu ý rằng tên sẽ khác nhau tùy thuộc vào phiên bản. Sau khi được chọn, hãy nhấp vào "Khởi động lại dịch vụ" từ bên trái.

Kiểm tra kết nối từ các PC khác

Hãy xem liệu chúng ta có thể kết nối với cơ sở dữ liệu từ một PC khác không. Thông tin đích kết nối khác nhau tùy thuộc vào môi trường, vì vậy chỉ có quy trình được mô tả ở đây. Tôi đang sử dụng pgAdmin để kết nối lần này, nhưng tôi nghĩ bạn cũng có thể kết nối với các công cụ truy cập cơ sở dữ liệu khác.

Sau khi khởi động pgAdmin trên PC khách tách biệt với máy chủ cơ sở dữ liệu, nhấp chuột phải vào Máy chủ và chọn "Đăng ký > Server...".

Trên tab Chung, Tên phải là tên sẽ giúp bạn xác định máy chủ.

Chọn tab Kết nối. Nhập "Tên / địa chỉ máy chủ", "Dữ liệu bảo trì", "Tên người dùng" và "Mật khẩu". Nếu bạn không muốn nhập mật khẩu mỗi lần, hãy bật "Lưu mật khẩu". Nhân tiện, pdAdmin có thể không giải quyết được tên của Máy chủ, vì vậy trong trường hợp đó, hãy chỉ định trực tiếp địa chỉ IP.

Điền vào các trường nhập liệu khác nếu cần. Khi bạn hoàn tất, hãy nhấp vào nút "Lưu".

Nếu bạn có thể kết nối với cơ sở dữ liệu của máy chủ đích, quá trình xác minh đã hoàn tất.