Python与MySQL如何保持长连接
介绍
在python后端开发中,时常会与数据库交互,重复的断开、连接 会大大消耗数据库资源。
所以一般都是定义全局变量,来弥补这个缺陷。
但是 Python 与Mysql 长连接的过程中,如果长时间没有交互,它是会断开的。
再次执行sql语句是就会报错。
解决方案
在执行sql前, ping一下连接是否正常。
如果正常,则不受影响,正常执行sql就行了;
如果异常,则需要重新连接数据库。
代码
1 # 此处为类中方法,相关参数也配置在了settings文件中
2 def test_conn(self):
3 try:
4 self.conn.ping()
5 except:
6 self.conn = pymysql.connect(
7 host=MYSQL_HOST,
8 user=MYSQL_USER,
9 password=MYSQL_PASSWORD,
10 database=MYSQL_DATABASE,
11 charset=MYSQL_CHARSET)
12 self.cursor = self.conn.cursor()
只需要在每次将执行sql前,调用一下这个方法即可。
博客同步:地址