import redis
import sys
from rediscluster import StrictRedisCluster
#host = "172.17.155.118"
#port = 6379
#passwd = ""
instance_ip = sys.argv[1]
instance_port = sys.argv[2]
startup_nodes = [{"host": instance_ip, "port": instance_port }]
rc = StrictRedisCluster(startup_nodes=startup_nodes, decode_responses=True, password="")
def check_key(rc,k):
key_len = 0
big_key = []
try:
type = rc.type(k)
if type == "string":
key_len = rc.strlen(k)
elif type == "hash":
key_len = rc.hlen(k)
elif type == "list":
key_len = rc.llen(k)
elif type == "set":
key_len = rc.scard(k)
elif type == "zset":
key_len = rc.zcard(k)
else:
print("Redis key type: "+type)
except Exception:
print("Redis key type error.")
if key_len > 5:
big_key.append(k)
big_key.append(type)
big_key.append(key_len)
print(big_key) def scan_key(rc):
rc_end = []
try:
rc_end = rc.scan_iter("*")
except Exception as e:
pass
#print(e)
for k in rc_end:
check_key(rc,k) if __name__ == '__main__':
scan_key(rc)

 
import redis
import sys db_host = ""
db_port =
r = redis.StrictRedis(host=db_host, port=int(db_port))
for k in r.scan_iter("lie*"):
print k

Python scan查找Redis集群中的key的更多相关文章

  1. Redis设置认证密码 Redis使用认证密码登录 在Redis集群中使用认证密码

    Redis默认配置是不需要密码认证的,也就是说只要连接的Redis服务器的host和port正确,就可以连接使用.这在安全性上会有一定的问题,所以需要启用Redis的认证密码,增加Redis服务器的安 ...

  2. 在Redis集群中使用pipeline批量插入

    在Redis集群中使用pipeline批量插入 由于项目中需要使用批量插入功能, 所以在网上查找到了Redis 批量插入可以使用pipeline来高效的插入, 示例代码如下: Pipeline p = ...

  3. 转:Redis设置认证密码 Redis使用认证密码登录 在Redis集群中使用认证密码

    Redis默认配置是不需要密码认证的,也就是说只要连接的Redis服务器的host和port正确,就可以连接使用.这在安全性上会有一定的问题,所以需要启用Redis的认证密码,增加Redis服务器的安 ...

  4. 通过扩展redis-cli来实现在redis集群中移动槽位

    下面的扩展代码基于redis 5.0.2进行扩展, 对于其他的redis版本, 我没有进行相关的测试.考虑到redis集群的修改频率,这段代码应该同时适用于其他的redis版本. 下面为修改的代码: ...

  5. linux系统centOS7下搭建redis集群中ruby版本过低问题的解决方法

    问题描述: 在Centos7中,通过yum安装ruby的版本是2.0.0,但是如果有些应用需要高版本的ruby环境,比如2.2,2.3,2.4... 那就有点麻烦了,譬如:我准备使用redis官方给的 ...

  6. redis集群中的主从复制架构(3主3从)

    架构图如下 首先开启6个实例,这里为了演示方便,只是在一个linux上开启了6个redis实例 6380 (主)   6480 (从) 6381(主)   6481(从) 6382(主)   6482 ...

  7. Redis集群下过期key监听

    1. 前言 在使用redis集群时,发现过期key始终监听不到.网上也没有现成的解决方案.于是想,既然不能监听集群,那我可以建立多个redis连接,分别对每个redis的key过期进行监听.以上做法可 ...

  8. 使用redis集群中遇到的错误

    一. 上述错误的原因: 1.在redis服务器上关闭防火墙 2.可能是host写错了 上述错误的原因: 配置文件中jedisClient代表的是单机版的redis,但是在类中转化的时候转化的是集群版

  9. spring 整合redis集群中使用@autowire无效问题的解决办法

    1.视频参考黑马32期宜立方商城第6课 redis对于的代码 我们先变向一个redis客户端的接口文件 package com.test; public interface JedisClient { ...

随机推荐

  1. 4.15 每周作业 —— 简单DP

    免费馅饼 Time Limit : 2000/1000ms (Java/Other)   Memory Limit : 65536/32768K (Java/Other) Total Submissi ...

  2. drf三大认证补充

    频率认证 源码分析部分 def check_throttles(self, request): for throttle in self.get_throttles(): if not throttl ...

  3. vi几个常用的命令

    1.同时打开多个文件:vi 1.txt 2.txt 3.txt 在多个文件中来回切换,命令行模式输入“:next"表示下一个,输入":previous"代表进入上一个,” ...

  4. 【ccf- csp201412-2】z字形扫描

    //ccf-Z字形扫描 #include<iostream> #include<cmath> using namespace std; #define N 500 int ma ...

  5. random mating

    随机交配种群 孟德尔分离(基于diploid and sexual)和随机交配(1.不因突变而改变的规律2.可计算的)是群体遗传学的基础. 随机交配(random mating)指群体中每一个成员与另 ...

  6. Django数据迁移时提示 ModuleNotFoundError: No module named 'users'

    执行数据迁移时提示找不到对应的APP,错误如下: 这个错误主要是路径找不到引起的,只需在settings文件夹中添加app文件路径即可 sys.path.insert(0, os.path.join( ...

  7. arm汇编几个经典例题

    这几个例题来自我们的上机实验,通过这几个例题基本上能掌握arm汇编一些最基本的操作 arm汇编实现1-100的加法 12345678910111213 AREA Example1,CODE,READO ...

  8. “Spring Boot+Marklogic实战应用(1)”

    版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议.本文链接:http://www.blbk.info Spring Boot+Marklogic应用 摘要: 在前一节的介绍,相信 ...

  9. F. Rhyme scheme

    题: https://nanti.jisuanke.com/t/41414 #include<bits/stdc++.h> using namespace std; typedef __i ...

  10. C++ 类中使用dllimport和dllexport

    在Windows平台下: 您可以使用dllimport或dllexport属性声明C ++类.这些形式意味着导入或导出整个类.以这种方式导出的类称为可导出类. 以下示例定义可导出的类.导出其所有成员函 ...