zoukankan      html  css  js  c++  java
  • 爬虫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允许的最大连接数

      

  • 相关阅读:
    gearman简介及安装使用
    Linux下进程的建立
    Linux中无缓冲文件I/O API
    XMLRPC for PHP简介及使用
    数据库水平切分方法
    LVS简介及使用
    进程通信之消息队列
    install docker/dockercompose
    centOS7 下安装 JDK
    iTerm2/firewall/pulsar
  • 原文地址:https://www.cnblogs.com/HugJun/p/11400233.html
Copyright © 2011-2022 走看看