Reids-5 常见操作命令

官网: https://redis.io/
参考: http://redisdoc.com/

------------------------常见操作---------------------------
客户端连接:
redis-cli -h {IP} -a {password}

可以显示密码
CONFIG GET requirepass:

DBSIZE:
返回当前库中有多少条数据

FLUSHDB
清空当前数据库数据.

SET
设置值(key是大小写敏感)

#1: 设置k1, 值为v1
set k1 v1

#2: 设置k2, 值为v2, 但是在5's后过期, 可以指定过期时间EX(秒), PX(毫秒), NX(不存在才能进行操作), XX(存在是才能进行操作)
set k2 v2 ex 5

SETEX
将值 value 关联到 key, 并将 key 的生存时间设为 seconds(以秒为单位)。

SETNX
将Key的值设置为value, 当key不存在的时候才可以, 如果存在, 则不进行任何操作.

SETRANGE
用value参数覆写(overwrite)给定 key 所储存的字符串值,从偏移量 offset 开始,相当于replace

SET K1 "TODAY IS SUNDA"
SETRANGE K1 9 FRIDAY
返回:
"TODAY IS FRIDAY"

MSET

设置多个值, 键值对形式 k1 v1 k2 v2..., 如果某个值存在, 则用新值覆盖旧值.
MSET k3 v3 k4 v4 k5 v5
mset person:name "zhangshan" person:age 13

MSETNX

设置多个, 但是有原子性. 如果存在, 则不能成功, 比如之前已经有k8, 则不能插入
msetnx k7 v72 k8 v81

PSETEX
以毫秒为单位设置key的生存时间

PSETEX value 2000 111
get value

第一次结果: "111"

get value
第二次结果: nil

GET
返回 key 所关联的字符串值, 如果 key 不存在那么返回特殊值 nil.

GETSET
设置一个值, 但是返回旧值, 如果key不存在, 则返回错误

GETSET hello "this is update one"
返回this is my first redis, 但是现在hello的值为this is update one

GETRANGE
截取字符串指定范围的值(包括start和end在内). 支持负数, 从左往右是0,1,..., 从右往左为 ...-2,-1

SET hello "this is my first redis"
GETRANGE hello 5 6
返回 is

GETRANGE hello -5 -1
返回 redis

GETRANGE hello 0 -1
GETRANGE hello 0 10000
返回整个字符串 this is my first redis

MGET
返回所有(一个或多个)给定key的值, 如果某个值不存在, 则这个key返回nil

MGET k1 k2

DEL
删除键

DEL K10

expire
设置过期时间

pexpire
设置过期时间(毫秒)

expireat
在时间点过期, 用得少, 参数是timestamp

pexpireat
在时间点过期, 毫秒计算, 用得少

persist
取消过期

ttl
查看存活时间(以秒为单位)

pttl
查看存活时间(以毫秒为单位)

type
查看键类型

exists
查看键是否存在

rename
替换键

RENAME 10 k10

RENAMENX
替换键, 当key不存在时, 返回错误

dump, restore
dump 是序列化一个值, restore 是将序列化后的值反序列化

SET country guangzhou
DUMP COUNTRY
"\x00\tGUANGZHOU\b\x00\x9a\xd7\xa9\xcd\xc4K\xe3="

DEL COUNTRY
RESTORE COUNTRY 0 "\x00\tGUANGZHOU\b\x00\x9a\xd7\xa9\xcd\xc4K\xe3="
GET COUNTRY
"GUANGZHOU"

keys
查找所有符合给定模式pattern的key

KEYS *

move
将当前的key移动到指定的db中, 一般redisdb有16个db(0-15)

MOVE K3 1

randomkey
从当前数据库中随机返回一个key

sort
返回或保存给定列表、集合、有序集合 key 中经过排序的元素。

LPUSH list1 1 3 4 9 10 7 5
sort list1

Type
返回 key 所储存的值的类型

type list1

------------------------字符串------------------
Append
将value 追加到 key 原来的值的末尾

append k1 -update

STRLEN
返回 key 所储存的字符串值的长度, 如果值不是字符串, 返回错误


------------------------数字
DECR
将 key 中储存的数字值减一, 如果值不是数字, 则返回错误

DECRBY
将 key 中储存的数字值减去指定的值, 如果值不是数字, 则返回错误

INCR
将 key 中储存的数字值加一, 如果值不是数字, 则返回错误

SET int1 20
INCR int1
GET int1
返回值21

INCRBY
将 key 中储存的数字值加上指定的值, 如果值不是数字, 则返回错误

INCRBY int1 19
返回值40

INCRBYFLOAT
为 key 中所储存的值加上浮点数增量 increment, 返回的结果的精度和增量一致


------------------------BIT 操作------------------
SETBIT

设置某一位上的值.
SETBIT bit 100 1

BITCOUNT
计算给定字符串中,被设置为1的比特位的数量, 统计流量

SETBIT k1 1 0
SETBIT K1 2 1
SETBIT K1 3 1
SETBIT K1 5 1
BITCOUNT K1
结果3

BITOP
对一个或多个保存二进制位的字符串 key 进行位元操作,并将结果保存到 destkey 上.

SETBIT K1 0 1
SETBIT K1 1 1
SETBIT K2 0 0
SETBIT K2 1 1
BITOP AND K3 K1 K2
BIGGET K3 1
结果是1

GETBIT
对key所储存的字符串值, 获取指定偏移量上的位(bit).


------------------------HASH 操作----------------------
HSET
将哈希表 key 中的域 field 的值设为 value.
如果 key 不存在,一个新的哈希表被创建并进行 HSET 操作.
如果域 field 已经存在于哈希表中,旧值将被覆盖.

HSET leo name "leo"

HGET
返回哈希表 key 中给定域 field 的值.

HDEL
删除哈希表 key 中的一个或多个指定域,不存在的域将被忽略。

HDEL leo name

HEXISTS
查看给定的field是否存在.

HGETALL
返回哈希表key中,所有的域和值.

HKEYS
返回哈希表中所有的keys

HVALS
返回hash表中指定key所有的值

HVALS rommy

HLEN
返回哈希表中key域的数量

HMGET
返回hash表中key的多个给定域的值.

HMSET
同时将多个field-value值设置到hash表中

HMSET rommy name "rommy" age 33 address "guangzhou"

HSTRLEN
返回哈希表 key中,与给定域field相关联的值的字符串长度(string length)

HSTRLEN rommy name
返回 5

------------------------LIST 操作
LIST允许有重复的值

LPUSH
把一个或者多个值插入到key中, 注意这个是先进后出来, 和RPUSH相反

LPUSH name "leo" "peter"
LRANGE name 0 -1
返回的结果是 peter leo

LPUSHX
把一个或者多个值插入到key中, 注意存在key才插入, 否则不插入

RPUSH
将一个或多个值value插入到列表key的表尾(最右边).

RPUSHX
将一个或多个值value插入到列表key的表尾(最右边).注意存在key才插入, 否则不插入

LSET
设置值

LSET name 0 "new"

LLEN
返回列表Key的长度

LLEN name

LRANGE
返回列表的值

LRANGE name 0 -1

LPOP
从list中头部先弹出元素

BLPOP
相当于是从list里面移除元素, 但是为(BLOCK式, 是LPOP的阻塞式版本)

RPOP
从list中尾部弹出元素

BRPOP
相当于是从list里面移除元素, 但是为(BLOCK式, 是RPOP的阻塞式版本)

LREM
移除元素, 和LPOP功能相似, 但是他可以制定移除的元素的值, 例如移除最先发现的2个USA

LREM push 2 "USA"

LINDEX
返回列表中,下表为index的元素

LINSERT
在某个制定的位置增加一个元素

LINSERT push BEFORE "UK" "Africa"

LTRIM
对一个列表进行修剪(trim),就是说,让列表只保留指定区间内的元素,不在指定区间之内的元素都将被删除.

RPOPLPUSH
1: 将列表 source 中的最后一个元素(尾元素)弹出,并返回给客户端。
2: 将 source 弹出的元素插入到列表 destination ,作为 destination 列表的的头元素。

BRPOPLPUSH
为RPOPLPUSH的阻塞版本.


------------------------SET 操作
他是无需的,去重的,元素是字符串类型,最多包括2^32 - 1元素

SADD
将一个或多个 member 元素加入到集合 key 当中,已经存在于集合的 member 元素将被忽略.

SADD set "china" "china" "usa"
实际上只存了2个元素

SMEMBERS
查看key下面包含的元素

SMEMBERS set
返回2个元素

SREM
移除集合key中的一个或多个member元素,不存在的member元素会被忽略.

SREM set "usa"

SCARD
集合中元素的个数, 性能好.

SCARD set
返回3

SDIFF
找出集合1中有的, 2中没有的.

SADD set1 "1a" "2a" "3a"
SADD set2 "2a" "3a" "4a"
SDIFF set1 set2
返回 1a

SDIFFSTORE
同SDIFF相似, 只不过是讲差集存放到另一个set中.

SDIFFSTORE set set1 set2

SISMEMBER
检查元素是否在集合内.

SISMEMBER set1 "2a"

SUNION
取并集

SUNION set1 set2
返回 "1a" "2a" "3a" "4a"

SUNIONSTORE
与SUNION类似, 但是他将并集存储在destination中, 而不是返回.

SUNIONSTORE set set1 set2

SINTER
求交集

SINTER set1 set2

SINTERSTORE
功能和SINTER相似, 只不过是将交集存储在destination中.

SMOVE
移除到另外一个集合里面

SMOVE set1 set "2a"

SPOP
随机移除指定个数的元素, 而且返回移除的元素

SPOP set

SRANDMEMBER
随机返回指定个数的元素, 和SPOP类似, 但是不移除, 使用场景, 抽奖

SRANDMEMBER set 2

------------------------SortedSet 操作
<font color=#00ffff size=72>color=#00ffff</font>
有序集合

ZADD
将一个或多个元素及其score加到有序集合中.

ZADD sorted 1 "Chinese" 2 "English"

ZCOUNT
返回有序集中,score值在min和max之间的成员的数量.

ZCOUNT sorted 0 1
返回2

ZRANGE
返回有序集key中,指定区间内的成员.

ZRANGE sorted 0 -1

ZCARD
返回元素的个数

ZCARD sorted
返回2

ZSCORE
显示分值

ZSCORE sorted "English"
返回2

ZREM
删除一个值

zrem sorted "Chinese"

ZRANGEBYSCORE
按分值来取值

ZRANGEBYSCORE sorted 2 2

ZINCRBY
为有序集key的成员member的score值加上增量increment.

ZINCRBY sorted 3 "Chinese"

ZRANK
返回值在集合中的排名

ZRANK sorted "English"

ZREVRANK
逆序排名, 同ZRANK类似, 只不过是逆序.

ZREVRANK sorted "Africa"

ZREMRANGEBYRANK
移除有序集key中,指定排名(rank)区间内的所有成员

ZREMRANGEBYRANK sorted 1 2

ZREMRANGEBYSCORE
删除指定分值范围的元素

ZREVRANGE
同ZRANGE, 只不过是按照递减顺序来的.

ZREVRANGEBYSCORE
按照score来筛选

ZREVRANGEBYSCORE sorted 4 3

ZUNIONSTORE
取并集, 然后存入另外一个集合中

ZUNIONSTORE s3 2 s1 s2

ZINTERSTORE
求交集

ZINTERSTORE s3 2 s1 s2
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 202,406评论 5 475
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 84,976评论 2 379
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 149,302评论 0 335
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,366评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,372评论 5 363
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,457评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,872评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,521评论 0 256
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,717评论 1 295
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,523评论 2 319
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,590评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,299评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,859评论 3 306
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,883评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,127评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,760评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,290评论 2 342

推荐阅读更多精彩内容

  • 一、基础知识:1、JVM、JRE和JDK的区别:JVM(Java Virtual Machine):java虚拟机...
    杀小贼阅读 2,362评论 0 4
  • 本文主要介绍 Redis 常用的基本操作命令和数据类型操作命令,也就是 Redis 的基本使用。通过学习本文,应该...
    江城子Leon阅读 538评论 0 0
  • Key(键) 1. DEL 时间复杂度:O(N), N 为被删除的 key 的数量。删除单个字符串类型的 key...
    one_zheng阅读 525评论 0 0
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,577评论 18 139
  • 吃早餐的时候,外婆问我:昨晚怎么10时才回家啊?我都有点担心了,等你回来我才睡的。我昨晚一回家就听到外婆问我了,那...
    漫步的小马驹阅读 608评论 1 4