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)
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.