Có tùy chọn hết thời gian để truy cập từ xa vào cơ sở dữ liệu PostgreSQL không?


9

Tôi đang làm việc thông qua pgAdmin III trên cơ sở dữ liệu PostgreSQL từ xa. Sau một khoảng thời gian không quá dài (giả sử 10-15 phút) mà không làm gì trong pgAdmin, kết nối sẽ tự động hết hạn. Do đó, tôi có một thông báo lỗi hỏi tôi có muốn kết nối lại không. Điều này mất khoảng 10 giây. và cấu trúc cơ sở dữ liệu sụp đổ, vì vậy tôi phải mở lại các lược đồ mà tôi đã mở trước đó.

Có cách nào để thay đổi tham số thời gian chờ ở đâu đó để ngăn kết nối hết hạn trong một khoảng thời gian dài hơn không?

Câu trả lời:


8

Kết nối máy chủ PostgreSQL bị rớt sau 10-15 phút gần như chắc chắn là do tường lửa theo dõi trạng thái (có thể sử dụng Dịch Địa chỉ Mạng (NAT)) giữa máy khách và máy chủ. Nhiều tường lửa như vậy có thời gian chờ mặc định là 15 phút (900 giây).

Ba thông số server-side, tcp_keepalives_idle, tcp_keepalives_interval, tcp_keepalives_countđược thiết kế để giúp đỡ trong những tình huống này. Xem tài liệu được đặt tại đây: http://www.postgresql.org/docs/9.2/static/r nb-config-link.html # GUC-TCP -KEEPALIVES-IDLE

Ngoài ra còn có các thông số client-side cho việc này: keepalives, keepalives_idle, keepalives_interval, keepalives_count, mà bạn có thể thiết lập kết nối. Xem tài liệu ở đây: http://www.postgresql.org/docs/9.2/static/libpq-connect.html#LIBPQ-KEEPALIVES


Bình luận không dành cho thảo luận mở rộng; cuộc trò chuyện này đã được chuyển sang trò chuyện .
Paul White 9
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.