【Redis使用系列】Redis常用操作

时间:2022-12-27 12:42:10

一、string类型的常用命令

set key value   #一个key对应一个value.多次赋值,会覆盖前面。

【Redis使用系列】Redis常用操作

setnx key value  #如果key存在则创建key1,并返回1,如果key已存在,则不会覆盖,并返回0

【Redis使用系列】Redis常用操作

setex  key time value #创建key设置过期时间为time

【Redis使用系列】Redis常用操作

ttl key  #查看key还有多久过期

【Redis使用系列】Redis常用操作

mset key1 value1 key2 value2 #同时设置多个值

【Redis使用系列】Redis常用操作

mget key1 key2 #批量获取key值

【Redis使用系列】Redis常用操作

del  key #删除key

【Redis使用系列】Redis常用操作

二、hash类型的常用命令

hset hashname key1 value1  #建立一个key为key1,value为value1的hash

【Redis使用系列】Redis常用操作

hget hashname name #获取name的值

【Redis使用系列】Redis常用操作

hmset hashname key1 value1 key2 value2 #批量设置键值对

【Redis使用系列】Redis常用操作

hmget hashname key1 key2 #批量获取key的value

【Redis使用系列】Redis常用操作

hgetall hashname # 获取所有hashname的key和value

【Redis使用系列】Redis常用操作

hdel hashname  key #删除hashname中的key

【Redis使用系列】Redis常用操作

hkeys hashname # 列出所有hashname的key值

【Redis使用系列】Redis常用操作

hvals  hashname #列出所有hashname的value值

【Redis使用系列】Redis常用操作

hlen hashname  #查看hashname有几个field

【Redis使用系列】Redis常用操作

三、list类型的常用命令

lpush listname a b c  #从左像listname中添加a b c 三个值

【Redis使用系列】Redis常用操作

lrange listname 0 -1 #列出listname中的值(无rrange命令)

【Redis使用系列】Redis常用操作

lpop listname  #取出最左侧的值(取出的值相当于被删除)

【Redis使用系列】Redis常用操作

rpush listname 1 2 3 #从右向listname中添加1 2 3三个值

【Redis使用系列】Redis常用操作

rpop listname  #取最右侧的值(取出的值相当于被删除)

【Redis使用系列】Redis常用操作

linsert listname before beforevalue value #在beforevalue的前面插入值value

【Redis使用系列】Redis常用操作

lset  listname beforevalue modifyvalue #修改beforevalue的值为modifyvalue

【Redis使用系列】Redis常用操作

lindex listname value #查看列表中的值(和lpop的区别是查看的值不会被删除)

【Redis使用系列】Redis常用操作

llen listname #查看列表中的值的个数

【Redis使用系列】Redis常用操作

四、set类型的常用操作

sadd setname a b c d #向集合中添加元素

【Redis使用系列】Redis常用操作

smembers setname #查看集合中的元素

【Redis使用系列】Redis常用操作

srem setname a #删除集合中的元素

【Redis使用系列】Redis常用操作

spop setname #取出集合中的元素(取出的值将会被删除)

【Redis使用系列】Redis常用操作

sdiff setname1 setname2 #比较两个集合差值,哪个集合在前就会显示前面这个集合中的在后一个集合中所没有的元素

【Redis使用系列】Redis常用操作

sdiffstore setname3 setname1 setname2 #将set1与set2的差值存储到set3中

【Redis使用系列】Redis常用操作

sinter setname1 setname2 #列出set1和set2中相同的元素(求交集)

【Redis使用系列】Redis常用操作

sinterstore setname3 setname1 setname2 #将交集结果存储到set3中

【Redis使用系列】Redis常用操作

sunion setname1 setname2 #列出set1和set2并集(set1和set2所有元素)

【Redis使用系列】Redis常用操作

sunionstore setname3 setname1 setname2 #将并集结果保存到set3中

【Redis使用系列】Redis常用操作

sismember setname3 fansik #判断set3里是否有fansik,有则返回1,没有则返回0

【Redis使用系列】Redis常用操作

srandmember setname3 #随机取出set3中的一个元素

【Redis使用系列】Redis常用操作

五、zset类型的常用命令

zadd zset 1 123 2 234 #创建有序集合

【Redis使用系列】Redis常用操作

zrange zset 0 -1 #查看有序集合元素,按顺序显示

【Redis使用系列】Redis常用操作

zrange zset 0 -1 withscores #带分值显示

【Redis使用系列】Redis常用操作

zrem zset 123 #删除一个元素

【Redis使用系列】Redis常用操作

zrank zset 555 #返回元素的索引值,索引值从0开始,按score正向排序

【Redis使用系列】Redis常用操作

zrevrank zset 444 #返回元素的索引值,索引值从0开始,按score反向排序

【Redis使用系列】Redis常用操作

zcard zset #反馈集合中所有元素的个数

【Redis使用系列】Redis常用操作

zcount zset 1 10 #返回分值范围内1-10的元素个数

【Redis使用系列】Redis常用操作

zrangebyscore zset 1 10 #返回分值范围内1-10的元素

【Redis使用系列】Redis常用操作

zremrangebyrank zset 0 2 #删除索引范围0-2的元素,按score正向排序

【Redis使用系列】Redis常用操作

zremrangebyscore zset 1 10 #删除分值范围1-10的元素

【Redis使用系列】Redis常用操作

六、键值和服务器命令

keys * #取出所有key值

【Redis使用系列】Redis常用操作

keys set* #模糊匹配、

【Redis使用系列】Redis常用操作

exists list #有list键返回1,否则返回0

【Redis使用系列】Redis常用操作

del list #删除list键成功返回1,否则返回0

【Redis使用系列】Redis常用操作

expire set1 10 #修改set1的过期时间为10秒

【Redis使用系列】Redis常用操作

ttl set1 #查看set1键还有多长时间过期,单位是s,当kset1不存在时,返回-2,当set1存在但是没有设置剩余生存时间,返回-1,否则,返回set1的剩余生存时间

select 1 #选择数据库,默认进入0数据

move set1 2 #把set1移动到2数据库

persist zset #取消zset的过期时间

randomkey #随机返回一个key

rename key4 keyfansik #重命名一个key

type keyfansik #查看一个键的类型

七、服务相关的操作

dbsize #返回当前数据库中键的个数

【Redis使用系列】Redis常用操作

info #返回redis数据库状态信息

flushdb #清空当前数据库中所有的键

flushall #清空所有数据库中的所有的key

bgsave # 将数据保存到rdb中,在后台运行

save # 间数据保存到rdb中,在前台运行

config get * #获取redis的配置信息

config get bind # 获取监听地址

config get dir # 获取redis的dir配置

config set timeout 1000 # 设置连接超时时间

将config命令改名

在配置文件中添加:

rename-command CONFIG fansik

禁用config命令:

rename-command CONFIG ""

修改配置后需要重启服务