Linux下redis 集群 批量删除 键

单机形式批量删除可使用xargs指令如下操作:

redis-cli -h 10.190.104.11 -p 6379  keys "user*" | xargs -i redis-cli -h 10.190.104.11 -p 6379  del  {}

如需密码加上-a 参数即可,如需指定某个库加上-n参数即可,例如:

redis-cli -a 密码 -h 10.190.104.11 -p 6379  -n 库号 keys "user*" | xargs -i redis-cli -a 密码 -h 10.190.104.11 -p 6379  -n 库号 del  {}

集群形式批量删除:不能直接使用上述形式,否则会报下列错:
Error: CROSSSLOT Keys in request don’t hash to the same slot

需要编辑shell脚本进行删除如下:

新建脚本

touch redis_del.sh

打开家脚本

vim  redis_del.sh

编辑脚本内容如下:

#!/bin/bash
redis_comm=/usr/local/redis/bin/redis-cli
redis_ser01=172.18.18.107
redis_ser02=172.18.18.108
redis_ser03=172.18.18.109
#redis库未加密码,不需要使用-a,不指定库,不需要使用-n参数
$redis_comm -c -h $redis_ser01  keys $1 | xargs -i ./redis-cli -h $redis_ser01 del {}
$redis_comm -c -h $redis_ser02  keys $1 | xargs -i ./redis-cli -h $
### 测试Redis集群的设置与性能 #### 准备工作 为了确保能够顺利测试 Redis 集群,在开始之前需确认已经按照既定流程安装并配置好 Redis 集群,包括但不限于准备至少三个 master 节点以及相应的 slave 节点[^3]。 #### 启动集群服务 进入 Redis 的 bin 目录下启动预先配置好的六个 Redis 实例。可以手动依次执行命令来启动这些实例,或者编写 shell 脚本来批量处理这一过程[^2]: ```bash #!/bin/bash for PORT in `seq 7000 7005`; do nohup ./redis-server ../conf/redis-${PORT}.conf & done ``` 此脚本会遍历端口号从 7000 到 7005 的范围,并为每个端口对应的配置文件启动一个 Redis 服务进程。 #### 创建集群结构 利用官方提供的 Ruby 脚本创建实际的集群拓扑关系。假设所有节点都已正常运行,则可以通过下面的方式建立集群连接: ```bash ./redis-cli --cluster create \ 127.0.0.1:7000 127.0.0.1:7001 127.0.0.1:7002 \ 127.0.0.1:7003 127.0.0.1:7004 127.0.0.1:7005 \ --cluster-replicas 1 ``` 这条指令指定了参与构建集群的所有地址及其副本数量(此处设为每台主机上有一个主节点和一个副节点),从而形成完整的集群架构[^4]。 #### 执行基本功能验证 一旦集群初始化完毕之后,就可以借助客户端工具来进行简单的读写操作以检验其是否能按预期工作。比如向某个赋值后再尝试获取它: ```bash $ redis-c -p 7000 127.0.0.1:7000> set mykey hello_world -> Redirected to slot [9862] located at 127.0.0.1:7002 OK 127.0.0.1:7002> get mykey "hello_world" ``` 以上交互展示了当访问特定 key-value 对时,请求会被自动重定向到负责该哈希槽位的实际存储位置处完成相应动作。 #### 性能评估方法 对于想要深入了解 Redis 集群表现的应用开发者来说,除了日常的功能性检测外还需要关注系统的整体吞吐量、响应时间等指标。为此可采用压力测试工具如 JMeter 或者专门针对 NoSQL 数据库的压力测试框架 YCSB 来模拟大量并发用户的场景;另外也可以直接调用内置 benchmark 命令快速获得初步印象: ```bash $ redis-benchmark -t set,get -n 100000 -q SET: 74444.44 requests per second GET: 88888.89 requests per second ``` 上述结果显示了在本地环境中分别对 SET 和 GET 操作进行了十万次循环后的平均速率统计结果。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值