python scan方式查询redis所有数据是否含有重复的key

demo

python 复制代码
import redis

# 连接到 Redis 服务器
client = redis.StrictRedis(host='192.168.1.1', port=6379)

# 用于存储所有键和重复键的集合
all_keys = set()
duplicates = set()

# Redis 默认有 16 个数据库,索引从 0 到 15
for db in range(8):
    print(f"Scanning database {db}...")
    client.execute_command('SELECT', db)

    # 使用 SCAN 命令迭代获取 key
    cursor = '0'
    while cursor != 0:
        cursor, keys = client.scan(cursor=cursor, count=100)
        for key in keys:
            # 检查是否已经存在于集合中
            if key in all_keys:
                duplicates.add(key)
            else:
                all_keys.add(key)

# 输出结果
if duplicates:
    print("Duplicate keys found:")
    for key in duplicates:
        print(key.decode('utf-8'))  # keys are returned as bytes, so decode them
else:
    print("No duplicates found.")
相关推荐
衫水4 小时前
ubuntu系统如何检查和安装以及运行redis
redis·ubuntu·bootstrap
多米Domi0115 小时前
0x3f第33天复习 (16;45-18:00)
数据结构·python·算法·leetcode·链表
freepopo5 小时前
天津商业空间设计:材质肌理里的温度与质感[特殊字符]
python·材质
森叶5 小时前
Java 比 Python 高性能的原因:重点在高并发方面
java·开发语言·python
小二·6 小时前
Python Web 开发进阶实战:混沌工程初探 —— 主动注入故障,构建高韧性系统
开发语言·前端·python
Lkygo6 小时前
LlamaIndex使用指南
linux·开发语言·python·llama
小二·6 小时前
Python Web 开发进阶实战:低代码平台集成 —— 可视化表单构建器 + 工作流引擎实战
前端·python·低代码
Wise玩转AI6 小时前
团队管理:AI编码工具盛行下,如何防范设计能力退化与知识浅薄化?
python·ai编程·ai智能体·开发范式
赵谨言7 小时前
Python串口的三相交流电机控制系统研究
大数据·开发语言·经验分享·python
鹿角片ljp7 小时前
Engram 论文精读:用条件记忆模块重塑稀疏大模型
python·自然语言处理·nlp