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前,调用一下这个方法即可。
博客同步:地址