zoukankan      html  css  js  c++  java
  • 利用python脚本统计和删除redis key

    该脚本扫描redis中所有的key,用于分析redis内存数据的key构成,扫描并保存文件,需要python支持redis模块。

    #!/usr/bin/env python
    # -*- coding: utf-8 -*-
    #jack chen
    import os, sys, time
    import redis
    
    def redis_scan():
        try:
            redisconn = redis.StrictRedis(host="xx.xx.xx.xx", port=6379, db=0)        #不同db需要修改
        except Exception as e:
            print("connect redis error")
            sys.exit(1)
        cursor = 1
        isNoe = True
        file = open('rediskey', 'a+')
        while cursor != 0:
            if isNoe:
                cursor = 0
                isNoe = False
            key = redisconn.scan(cursor, count=2000)        #每次拿2000个key
            time.sleep(0.05)
            if len(key[1]) == 0:
                print("key scan finish")
            else:
                for n in key[1]:
                    n = bytes.decode(n)
                    file.write(n)
                    file.write("
    ")
                    cursor = key[0]
        file.close()
    
    redis_scan()
    

    删除key

    提前把key保存到key.txt文件中,然后读取一行一行执行删除key的动作。

    #!/bin/env python
    # -*- coding: UTF-8 -*-
    #function: 根据文件列表删除key,一行一个redis key
    #authors: jack chen
    import os, sys
    import redis
    import time
    
    conn = redis.StrictRedis(host="xx.xx.xx.xx",port=6379,db=0)           #注意redis的db
    
    with open('key.txt') as file:
        for line in file:
            time.sleep(0.001)
            keyname = line.rstrip('
    ')
            conn.delete(keyname)
            print("key: %s delete ok" %keyname)
    
  • 相关阅读:
    window screen (获取屏幕信息)
    setTimeout 与 setInterval
    php 安装程序
    字符串string 对象发的应用
    数组 array 的方法使用
    angular js h5关于表单验证的例子
    angularjs 路由的应用
    勾选复选框按钮可用否则不可用
    h5正则验证表单
    常见的正则表达式
  • 原文地址:https://www.cnblogs.com/hzxyf/p/13858030.html
Copyright © 2011-2022 走看看