redis中与key相关的命令

1、简单描述

redis本质上是一个key-value db,value可以有多种类型(string、hash、set、sorted set、list等),本章节不讲这些类型的命令,这里是讲跟key相关的命令操作。

key本身是string类型,不支持边界符,比如my key 这种名字是会报错的,mykey\n这样包含换行符的也不行,包含\r\n的会被特殊处理,暂不细说。

由于redis的数据是在内存中的,所以如果key的名字过长,会占用更多字节,另外就是查找的时候,会比长度短的key慢。但是key名称长度也不能过小,否则可读性差。

2、相关命令(下面所有截图是在redis 4.0.1上测试的结果,4.0.1是2017年7月发布的稳定版本)

1)exists命令 : 判断key是否存在,同时可以支持多个key的判断,返回存在的key的数量。

2)keys命令:支持模式匹配

3)type命令:查看key的类型

【注意】type命令只能查看一个key的类型,不支持多个key同时查询。

4)rename命令:重命名一个key为新的名称。如果新key本来是存在的,则会覆盖,如果旧key不存在,会报错。

如果修改的新key存在,会覆盖,而且新key的类型会跟着改变,比如myHash本来是hash类型,现在把myString改名字为myHash:

myHash本来是hash类型,把string类型的myString的名字改为myHash,会把原来存在的myHash这个key给覆盖掉了。

时间: 2024-12-15 06:52:46

redis中与key相关的命令的相关文章

辛星浅析Redis中与key有关的命令

在Redis中,我们还可以直接对key直接操作,下面是我们常用的主要命令: (1)keypattern   它表示获取所有匹配pattern的keys,这里需要注意的是,我们应该避免使用该命令,因为对于大型数据库而言,该命令非常耗时,对Redis服务器的性能打击也是比较大的.它支持glob-style的通配符格式,比如用*表示任意一个或者多个字符,用?表示任意字符,用[xyz]表示方括号中的任意一个字母. (2)del   key ....   它是从数据库中删除参数中指定的keys,如果指定的

Redis中的数据结构与常用命令

开发系统:Ubuntu 17.04Redis驱动:StackExchange.Redis 1.2.3Redis版本:3.2.1开发平台:.NET Core 对于Redis的介绍这里只写一句:Redis是一种基于内存的高性能非关系型数据库,它以kye-value的形式来存储数据. 5种数据结构 Redis中包含5种数据类型:STRING.LIST.SET.HASH.ZSET. Redis中的5中数据结构(截图出自<Redis in Action>): Redis以key-value形式存储数据,

单点登录filter根据redis中的key判断是否退出

package com.ailk.biapp.ci.localization.cntv.filter; import java.io.IOException; import java.util.HashMap; import java.util.Map; import javax.servlet.FilterChain; import javax.servlet.ServletException; import javax.servlet.http.HttpServletRequest; imp

Redis 键(key)相关的命令及其它命令的查看地址

Redis 键(key) Redis 键命令用于管理 redis 的键. 语法 Redis 键命令的基本语法如下: redis 127.0.0.1:6379> COMMAND KEY_NAME 实例: 在以上实例中 DEL 是一个命令, runoobkey 是一个键. 如果键被删除成功,命令执行后输出 (integer) 1,否则将输出 (integer) 0 下面给大家列举几个常用的跟键相关的命令: Redis DEL 命令 Redis DEL 命令用于删除已存在的键.不存在的 key 会被忽

超大批量删除redis中无用key+配置

目前线上一个单实例redis中无用的key太多,决定删除一部分. 1.删除指定用户的key,使用redis的pipeline 根据一定条件把需要删除的用户统计出来,放到一个表里面,表为 del_user(int user_id),rows大约在1千万. 要删除的key为 "login:%s" %s匹配 user_id . 写sql文如下:把sql文保存在一个文件里面,命名为 1.sql SELECT CONCAT( "*2\r\n", '$3\r\n',    'D

Redis中有序集合的常用命令有哪些?

本文和大家分享的主要是redis 中有序集合类型的常用命令,一起来看看吧,希望对大家 学习redis有所帮助. 一.有序集合类型 有序集合类型,大家从名字上应该就可以知道,实际上就是在集合类型上加了个有序而已.Redis 中的有序集合类型,实际上是在集合类型上,为每个元素都关联一个分数,有序实际上说的是分数有序,我们根据分数的范围获取集合及其他操作.集合的元素依然是不能够相同的,但是分数可以相同. 下面列举有序集合和类型和列表类型的相似处: ① 两者都是有序的(废话!) ② 两者都可以获得某一范

代码实测:给redis中的key取一个正确的名字多么重要

redis对写入的key长度有限制吗? 太长的key对性能有影响吗? key越长对性能影响越大? 如何评估键长度对性能的影响? talk is cheap, show me the code! 今天我们一起用代码来验证一下key的长度对redis读取key的性能影响. 网络环境:本地 内存:8G redis版本:redis-5.0.7 实验代码如下,读写1000次长度为16.128.512.1024.2048.4096.9012.20000.100000长度的key获取执行的总时长: 随机生成指

Redis 的数据类型 - Keys 相关的命令

KEYS:返回所有符合给定模式的 key 语法:KEYS pattern *:匹配任意个字符 ?:匹配一个任意字符 []:匹配[]之间的一个字符,[b-e],a[b-e] ab ac ad ae \x:匹配特殊字符\? \* MSET one 'one' two 'two' three 'three' four 'four' five 'five' six 'six' seven 'seven' KEYS * KEYS *o* KEYS t??? KEYS ?s* KEYS c[n-z]* #c

(04)redis中关于key的操作命令

(01)设置key的生存时间:expire key second (02)查看key的剩余生存时间:ttl key (03)查看所有的key:keys * (04)查看所有以asdf开头的key:keys asdf* (05)判断key是否存在:exists key (06)删除一个key:del key (07)给key重命名:rename oldkey newkey (08)返回值的类型:type key 原文地址:https://www.cnblogs.com/javasl/p/12099