Python自动重连postgre数据库
时间: 2023-12-02 14:06:14 浏览: 189
可以使用Python中的psycopg2库来自动重新连接PostgreSQL数据库。您需要使用以下代码来实现这一点:
```
import psycopg2
from psycopg2 import OperationalError
# 定义连接参数
conn_params = {
"host": "your_host",
"port": "your_port",
"database": "your_database",
"user": "your_username",
"password": "your_password"
}
# 定义重新连接方法
def reconnect():
global conn_params
conn = None
while not conn:
try:
conn = psycopg2.connect(**conn_params)
except OperationalError as e:
print(f"连接失败: {e}")
continue
return conn
# 初始化连接
conn = reconnect()
# 检查连接是否有效
def check_conn():
global conn
try:
conn.cursor().execute("SELECT 1")
except OperationalError:
conn = reconnect()
```
这段代码定义了一个重新连接方法,每次进行数据库操作时,都会检查连接是否有效。如果连接无效,则会自动重新连接。您可以使用`check_conn()`方法检查连接是否有效,如果无效,它将自动重新连接。
阅读全文