精华内容
下载资源
问答
  • redis清空key
    千次阅读
    2022-02-09 11:42:24

    在cmd 命令窗口,输入清空所有Redis 数据指令:

    flushall
    更多相关内容
  • redis删除指定key以及清空

    千次阅读 2021-11-03 11:20:58
    1、执行whereis redis 查找redis安装路径 [root@zuj home]# whereis redis redis:/usr/local/redis 2、切换到redis脚本目录 cd /usr/local/...6、清空整个 Redis 服务器的数据:flushall 7、清空当前库中的所有...

    1、执行whereis redis 查找redis安装路径

    [root@zuj home]# whereis redis
    redis:/usr/local/redis

    2、切换到redis脚本目录    cd  /usr/local/redis/bin

    3、登录redis:./redis-cli -h 127.0.0.1 -p 6379

    4、查看所有key值:keys *

    5、删除指定索引的值:del key

    6、清空整个 Redis 服务器的数据:flushall 

    7、清空当前库中的所有 key:flushdb

    展开全文
  • 关于Redis清理大量Key的方法

    千次阅读 2022-01-24 11:11:37
    Redis是单线程,同一时间段内操作大量的key值,会造成进程阻塞,会影响正在运行的其它业务,严重时会导致数据库雪崩。 方法一 del方法 推荐力度:极不推荐 是否会影响线上业务:严重影响 会影响线上业务,...

    首先讲解下Redis的基本概念:

    Redis是单线程,同一时间段内操作大量的key值,会造成进程阻塞,会影响正在运行的其它业务,严重时会导致数据库雪崩。

    方法一

    del方法

    推荐力度:极不推荐

    是否会影响线上业务:严重影响

    会影响线上业务,一般情况会造成其它服务写入读取卡顿,严重时会造成其它服务业务无法正常进行。

    方案缺陷

    删除的key字段数量较大时,会导致redis卡顿,影响其它业务,删除量比较大时,甚至会导致redis雪崩。

    方案二

    UNLINK

    推荐力度:推荐

    是否会影响线上业务:不会影响

    Redis UNLINK 命令跟 DEL 命令十分相似:用于删除指定的 key 。就像 DEL 一样,如果 key 不存在,则将其忽略。但是,该命令会执行命令之外的线程中执行实际的内存回收,因此它不是阻塞,而 DEL 是阻塞的。这就是命令名称的来源:UNLINK 命令只是将键与键空间断开连接。实际的删除将稍后异步进行。

    版本要求:可用版本>= 4.0.0.

    注:如何你是使用的是windows版本,就不需要考虑这个方法,因为Windows版本的Redis是很老的版本。

    方案三

    redis-cli执行Lua脚本

    推荐力度:极力推荐

    是否会影响线上业务:不会影响 

    使用场景:如果你是匹配某一类的key字段,并需要将其删除,该方案是标准的删除方法。

    使用方法

    在 redis-cli 中执行如下命令

    EVAL "local keys = redis.call('keys', ARGV[1]) for i=1,#keys,5000 do redis.call('del', unpack(keys, i, math.min(i+4999, #keys))) end return #keys" 0 'gameBillRecord*' 

    参数说明:

    5000:表示每次使用del删除的数量

    gameBillRecord:模糊匹配需要删除的字段

    方案四

    当我们的清理需求比较复杂时,就不能使用简单的模糊匹配删除了。

    需求场景

    我们需要通过mysql的一张用户表tb_user_info,通过该表中的封号字段,对封号数据进行清理,表中的封号数量为50000。

    每个用户在redis中存储了多个key字段类型,例如用户10000的key字段有如下类型:

    player_moudle_10000(key字段)

    gameBillRecord_10000(集合)

    gameBillRecord_10000-20220122(集合)

    gameBillRecord_10000-20220123(集合)

    gameBillRecord_10000-20220124(集合)

    通过分析需求场景,我们发生,1个用户对应的字段可能达5个甚至更多,我们累计需要删除的key数量达到20W以上,此时只能通过编写逻辑脚本进行数据整理再进行删除。

    脚本流程思路

    #STEP-1

    查询出封号的用户列表

    #STEP-2

    注:这里不要使用keys命令,会造成阻塞,scan不会造成阻塞。

    通过scan命令模糊查询,将redis中所有的key字段全部加载到内存中进行与封号用户列表匹配,筛选出需要删除的key。

    #STEP-3

    配合方案三,生成Lua脚本代码,再使用命令批量执行Lua脚本即可。

     Lua模版脚本代码(clearPlayerStencil_0.lua):

    -- 选择DB库
    redis.call('select','0')
    -- 输出日志
    redis.log(redis.LOG_WARNING,"Step-0")
    -- delRedisKeyString 替换为需要删除的key字段(例如:local delRedisKeyList = {player_moudle_10000,player_moudle_10001,player_moudle_10002};)
    local delRedisKeyList = {delRedisKeyString};
    -- 输出日志
    redis.log(redis.LOG_WARNING,"Step-1");
    redis.log(redis.LOG_WARNING,"delRedisKeyList"..#delRedisKeyList);
    redis.log(redis.LOG_WARNING,"Step-2");
    -- 循环输出(每次删除5000个)
    for i=1,#delRedisKeyList,5000 do 
       redis.call('del', unpack(delRedisKeyList, i, math.min(i+4999, #delRedisKeyList)));
    end

    生成bat脚本(SH脚本同理)(清理封号用户数据0.bat)

    @echo off
    title clearForbidenPlayer
    redis-cli -h 127.0.0.1 -p 6809 -a password --eval clearPlayerStencil_0.lua
    pause

    完成后,执行 清理封号用户数据0.bat 即可。

    例如:我们总共需要删除20W条Key,每个脚本清理1W条,只需要生成20个bat脚本,然后再执行这20个脚本即可,脚本基本上是秒执行。

    注:Lua的数组存储是有上限的,不能将20W条key直接存储,需要分脚本存储并删除。

    展开全文
  • Linux下清空Redis指定key或者所有数据

    千次阅读 2021-01-21 11:09:32
    在其他博客的地址我都看了一下,大多都没有介绍说明各种命令都代表什么含义,我来总结一下。 首先,我们需要保证 redis在 linux服务器上存活。

            在其他博客的地址我都看了一下,大多都没有介绍说明各种命令都代表什么含义,我来总结一下。主要总结的是Linux下对Redis的常规操作

    首先,我们需要保证 redis 在 linux 服务器上存活。

    其次就是在Linux下进入Redis(请按照自己的实际目录进入到redis-cli)

    cd /redis/src/redis-cli

    其次,如果你是有设置Redis密码的这时候你执行指令是报没有权限的问题,这时你需要执行

    auth "密码"

    上面的密码必须用英文双引号括起来,执行后就会显示OK的字样

    然后就可以查看Redis下的库或者其他操作了

    查看所有key:keys *
    
    查看key的数量:dbsize
    
    删除指定key名的数据:del key名
    
    清空整个 Redis 服务器的数据:flushall
    
    查看key信息:get key
    (key 为 keys * 查出的 keys)
    
    信息添加:set key value
    (key 为名 value 为你要录入的数据)
    
    退出:exit

    展开全文
  • Redis中没有批量删除特定前缀key的指令,但我们往往需要根据前缀来删除,那么究竟该怎么做呢?可能你一通搜索后会得到下边的答案 redis-cli --raw keys "ops-coffee-*" | xargs redis-cli del 直接在linux下通过...
  • redis如何使用命令清空所有key

    千次阅读 2022-04-22 09:51:15
    redis如何使用命令删除所有key
  • 单机模式 代码片段安装 pip install redisimport redisr = redis.Redis(host='192.168.1.3', port=6188,db=0,decode_responses=True)list_keys = r.keys("DEMO_xx_*")for key in list_keys:r.delete(key)集群模式 ...
  • redis批量删除key

    2022-04-07 15:00:41
    在开发过程中,会遇到要批量删除某种规则的key,例如login_logID(ID为变量),现在需要删除"login_log*"这一类的数据,但是redis本身只有批量查询一类key值的命令keys,但是没有批量删除某一个类的命令。...
  • 1、DEL$redis = new redis();$redis->...// The first case 删除单独的 key$redis->set('w3ckey','redis');var_dump($redis->get('w3ckey')); // 返回 redis$redis ->del('w3ckey');...
  • Redis是一个高性能的key-value数据库。redis中可以借助Linux的xargs指令来批量删除key,也可以使用flushdb和flushall命令删除所有key。批量删除KeyRedis 中有删除单个 Key 的指令 DEL,但好像没有批量删除 Key 的...
  • python redis操作-删除key

    千次阅读 2021-03-22 09:21:06
    连接 redis # 配置 REDIS_HOST = '127.0.0.1' REDIS_PORT = 6379 REDIS_PARAMS = { 'password': '', } redis_pool = redis.ConnectionPool(host=REDIS_HOST, port=REDIS_PORT, decode_responses=True
  • 清除rediskey与数据

    万次阅读 2018-06-05 21:49:43
    二 清除缓存 安装目录下 打开redis-cli.exe 输入 flushdb 或者flushAll如果有密码 会出现NOAUTH Authentication required解决办法 127.0.0.1:6379> auth "yourpassword" ...
  • Redis清空list队列命令

    千次阅读 2021-12-16 22:50:14
    redis中的list操作命令中删除指定key中的所有记录命令: Ltrim key 1 0 即 ltrim key start end 中的start要比end大即可,数值且都为正数。 参考资料:http://redis.cn/commands/ltrim.html ...
  • ------------------------------------------------------Redis并没有提供批量删除记录的方法,这有时候很不方便,特别是重新初始化数据的时候。一般有两种做法:如果业务场景明确,可以通过DBID进行区分,Redis默认...
  • redis清空部分key

    2019-09-26 16:31:21
    redis-cli keys "test:job:*" redis-cli keys "test:job:*" |xargs redis-cli del 转载于:https://www.cnblogs.com/mikeluwen/p/8182484.html
  • Rediskey与热key

    千次阅读 2021-11-14 23:43:18
    Redis中BigKey解决方案 什么是BigKey? BigKey指的是redis中一些key value值很大,这些key在序列化与反序列化过程中花费的时间很大! 操作bigkey的通常比较耗时,也就意味着阻塞Redis可能性越大!占用的流量同时也会变...
  • Redis常用命令,清空Redis缓存数据库

    千次阅读 2021-11-15 09:34:57
    清空数据库: flushdb // 清除当前数据库的所有keys flushall // 清除所有数据库的所有keys 1)连接操作命令 quit:关闭连接(connection) auth:简单密码认证 help cmd: 查看cmd帮助,例如:help quit 2)...
  • 删除docker中rediskey(模糊查询)
  • Rediskey 操作

    2021-08-31 14:35:18
    进入redis zcj@zcj-virtual-machine:~/桌面$ /usr/local/bin/redis-cli 127.0.0.1:6379> 插入键值对新增数据 127.0.0.1:6379> set k1 abcabc OK 查询某个key的值 127.0.0.1:6379> get k1 "zcj" 查看当前库的所有key ...
  • Redis修改key的值(重命名key),附常用key命令 命令:rename oldKey newKey 不会改变TTL的 常用key命令,在Redis中存储的key都是String类型,在Rediskey和value长度最大均为512M key操作: keys *:查看...
  • redis查看所有的key&redis清空所有数据

    千次阅读 2022-04-22 11:51:04
    1.首先进入redis的bin目录,启动redis服务 2…/redis-cli -h 192.168.172.***(这里写的是ip地址,也就是conf文件bind 后面写的ip) 3.我这里之前已经清空了,要是清的话直接用就行了
  • Redis(key 和 数据类型)

    2022-01-02 15:22:19
    key命令 keys * 查看当前库中的所有key exists key 判断某个key 是否存在 type key 查看key是什么类型 del key 删除指定的key数据 unlink key (仅将keys从keyspace元数据中删除,真正的删除会在后续异步操作) expire ...
  • 个推作为国内第三方推送市场的早期进入者,...然而,在实际业务场景中我们也遇到了一些Rediskey造成的服务阻塞问题,因此积累了一些应对经验。本文将对大key的发现、解决大key删除造成的阻塞做相应的介绍。Redis...
  • redis查看某个key rediskey的操作命令发布时间:2017-04-02来源:服务器之家在该系列的前几篇博客中,主要讲述的是与Redis数据类型相关的命令,如String、List、Set、Hashes和Sorted-Set。这些命令都具有一个共同...
  • redis删除指定key

    万次阅读 2021-06-16 19:23:16
    redis删除指定key 1.打开redis目录并打开redis-cli.exe 如果直接输入get key会出现以下问题,表示需要认证,也就是需要登录用户 使用auth password登录即可 然后使用get key获取键的值 确认后,使用del key删除...
  • RedisKey前缀删除

    2022-05-31 17:06:20
    redis-cli --scan --pattern "prefix::*" | xargs -L 2000 redis-cli del
  • php redis删除key的方法:首先使用scan命令增量迭代的方式遍历出以【XX】为前缀的key;然后通过unlink函数删除指定的key即可。php redis批量删除key摘要使用scan命令增量迭代的方式遍历出以XX为前缀的key,然后删除...
  • [root@192 bin]# redis-cli -p 6379 127.0.0.1:6379> ping PON 2)清空数据库(FLUSHALL) 127.0.0.1:6379> FLUSHALL OK 3)设置并展示key(SET) 127.0.0.1:6379> set name dong OK 127.0.0.1:...
  • redis-删除所有key

    千次阅读 2019-04-18 19:32:53
    删除所有Key,可以使用Redis的flushdb和flushall命令 /删除当前数据库中的所有Key flushdb //删除所有数据库中的key flushall redis命令行批量删除匹配到的key 执行命令如下 redis-cli -h 12.132.30.21 -p 6379...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 36,357
精华内容 14,542
关键字:

redis清空key