redis常用命令

发布时间:2024年01月09日

目录

前言:

1. set 与 get

2. keys(查询 key)

3. exists(判定 key 是否存在)

4. del(删除指定的 key)

5.?expire(设置 key 过期时间)

?6.? ttl(获取 key 的过期时间)


前言:

redis 支持很多数据结构,也就是一个 value 可以是一些复杂的数据结构。redis 的这些键值对,是通过 哈希表 的方式来组织。但是它的某个值(value),又可以是一些数据结构。

redis 是客户端-服务器的结构,是通过网络来进行传输数据的。所以 redis 很多命令都是支持一次能操作多个 key / 操作。

redis 的,是相对于 Mysql 等。


1. set 与 get

set:通过 key 来存储value

get:通过 key 来获得value

set key?value

get key


2. keys(查询 key)

keys?: 通过特殊符号(通配符)来返回满足样式的 key,时间复杂度:O(n)。

keys?pattern;

?


3. exists(判定 key 是否存在)

返回 key 存在的个数(可以针对多个key),时间复杂度O(1)/O(N)(N为检查key的个数)。

exists key [key ...]


4. del(删除指定的 key)

返回删除 key 的个数(可以针对多个key),时间复杂度O(1)/O(N)(N为检查key的个数)。

del key [key ...]

?这个删除操作是否非常危险?

1. redis 作为缓存。此时 redis 里存的只是一个热点数据,全量数据是在 mysql 数据库中。此时,如果把 redis 中的 key 删除了几个,一般来说,问题不大~~。但是,当然如果把所有的数据或者一大半数据一下都干没,这种影响会很大(本来 redis 是帮 mysql 负重前行,redis 没数据了,大部分的请求就直接打给mysql 然后就容易把 mysgl 搞挂)

2.? redis 作为数据库,误删数据影响很大。

3.? redis 作为消息队列(mq),需要具体情况具体分析。

4.? 别犯这个错误就不危险!!!


5.?expire(设置 key 过期时间)

key 存在时间超过指定的值,就会被自动删除。返回 1 表示设置成功,0 表示设置失败。

expire key seconds(秒)

pexpire key ms(毫秒)


?6.? ttl(获取 key 的过期时间)

返回剩余过期时间,-1 表示没有关联过期时间,-2 表示 key 不存在。

ttl key

文章来源:https://blog.csdn.net/llt2997632602/article/details/135326534
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。