Mam aplikację python, która otwiera połączenie z bazą danych, która może zawiesić się online na kilka godzin, ale czasami serwer bazy danych restartuje się, a podczas gdy python nadal ma połączenie, nie zadziała z wyjątkiem OperationalError
.Upewnianie się, że połączenie z bazą danych psycopg2 przy życiu
Poszukuję więc jakiejkolwiek niezawodnej metody "pingowania" bazy danych i wiem, że połączenie jest żywe. Sprawdziłem dokumentację psycopg2, ale nie mogę znaleźć czegoś takiego. Pewnie mogę wydać prostą instrukcję SQL, taką jak SELECT 1
i wychwycić wyjątek, ale mam nadzieję, że istnieje natywna metoda, coś w stylu PHP: PHP pg_connection_status
Dzięki.
Doszedłem do tego samego wniosku, czytając źródła psycopg2. Dzięki. – HardQuestions
Złoży wniosek do autora psycopg, aby dodać taką funkcję. – HardQuestions
Zobacz odpowiedź Jaymona poniżej. – sage88