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)

    利用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)
  • 相关阅读:
    LeetCode 109 Convert Sorted List to Binary Search Tree
    LeetCode 108 Convert Sorted Array to Binary Search Tree
    LeetCode 107. Binary Tree Level Order Traversal II
    LeetCode 106. Construct Binary Tree from Inorder and Postorder Traversal
    LeetCode 105. Construct Binary Tree from Preorder and Inorder Traversal
    LeetCode 103 Binary Tree Zigzag Level Order Traversal
    LeetCode 102. Binary Tree Level Order Traversal
    LeetCode 104. Maximum Depth of Binary Tree
    接口和多态性
    C# 编码规范
  • 原文地址:https://www.cnblogs.com/shiyueyangne/p/14249785.html
Copyright © 2011-2022 走看看