Tôi có ứng dụng python mở kết nối cơ sở dữ liệu có thể treo trực tuyến trong một giờ, nhưng đôi khi máy chủ cơ sở dữ liệu khởi động lại và trong khi python vẫn có kết nối, nó sẽ không hoạt động với ngoại lệ OperationalError
.Đảm bảo rằng kết nối cơ sở dữ liệu psycopg2 còn sống
Vì vậy, tôi đang tìm bất kỳ phương pháp đáng tin cậy nào để "ping" cơ sở dữ liệu và biết rằng kết nối vẫn còn hoạt động. Tôi đã kiểm tra một tài liệu psycopg2 nhưng không thể tìm thấy bất cứ điều gì như thế. Chắc chắn tôi có thể phát hành một số câu lệnh SQL đơn giản như SELECT 1
và bắt ngoại lệ, nhưng tôi hy vọng có một phương thức gốc, giống như PHP pg_connection_status
Cảm ơn.
Tôi đã đi đến kết luận tương tự khi đọc nguồn psycopg2. Cảm ơn. – HardQuestions
Sẽ gửi yêu cầu tới tác giả psycopg để thêm chức năng như vậy. – HardQuestions
Xem câu trả lời của Jaymon bên dưới. – sage88