爬虫mysql,redis重新连接和关闭连接

报错

pymysql.err.InterfaceError: (0, '')

在python 的多线程里 同时使用一个MySQL链接导致的----要把mysql数据库连接放入函数中!

#使用多线程等,切忌全局变量

conn="127.0.0.1", user="root",password="123", database="future", charset="utf8")
cur = conn.cursor()

#在执行sql前插入下行代码------实现断开自动重连

conn.ping(reconnect=True) #ping是否连接,如果没有连接会重新连接数据库
sql = 'INSERT INTO 表 VALUES (NULL,数据)'
cur.execute(sql)
conn.commit()

python 关闭 redis连接对象

import redis
r = redis.Redis()

#因为redis没有关闭具体某一个对象 以下是关闭连接池中一个
r.connection_pool.disconnect()

#如果使用多线程,创建redis对象放入函数中 #redis连接数会暴增,时间过长会卡断报错程序,无法新的redis连接 #解决方法 # 1.redis修改连接最大数量 #redis客户端 #查看连接数量 info clients #查询可连接最多数 CONFIG GET maxclients #修改连接最大数 config set maxclients 10000 #可以设置redis允许的最大连接数

  

原文地址:https://www.cnblogs.com/HugJun/p/11400233.html