Windows配置
2024年10月30日
17:50
1.下载Redis on Windows
2.配置环境变量
3.启动服务
redis-server
4.访问客户端
redis-cli
注 : redis端口号为6379
介绍
2024年10月31日
9:04
作用 :
1.Redis是一个开源的内存数据结构存储系统,是非关系型数据库
2.常用于作数据库,缓存和消息代理
3.数据存储在内存中,具有高性能的特性
4.支持高达数百万次的读写请求,适合高并发和实时性要求的场景
5.存储的数据是key-value格式
cmd命令
2024年10月30日
17:58
redis-server命令 : 启动redis服务
启动redis服务时,指定配置文件 |
redis-cli命令 : 启动客户端
<-h> <-p> | 指定ip或端口号,本地启动不需要指定 |
端口号
2024年10月31日
9:03
6379 : 默认端口号,可以在redis.conf中修改
键
2024年10月31日
9:10
定义 : key
1.用于标识和存取数据的基础单位
2.字符串类型
3.最大长度为512mb
4.key的命名方式通常使用:分隔符,例如user:1001:name
命令
2024年10月31日
9:15
基本操作 :
keys * | 查看当前库的所有key |
get key | 获取key的value |
set key value | 设置键值对 |
del key… | 删除指定的key或多个key |
exists key | 判断key是否存在 |
type key | 查看key的类型 |
过期时间 :
expire key seconds | 设置key过期时间,单位 : 秒 |
pexpire key milliseconds | 设置key过期时间,单位 : 毫秒 |
expireat key timestamp | 设置key过期时间戳,单位 : 秒 |
pexpireat key timestamp | 设置key过期时间戳,单位 : 毫秒 |
ttl key | 查看key的剩余生存时间,单位 : 秒,未设置返回-1 |
pttl key | 查看key的剩余生存时间,单位 : 毫秒 |
重命名 :
rename key newKey | 重命名key |
renamenx key newKey | newKey不存在时重命名key |
批量操作 :
mset key value… | 设置多个键值对 |
mget key…. | 获取多个key的value |
msetnx key value… | 设置多个键值对,在所有给定key都不存在的情况下 |
数据类型
2024年10月31日
9:07
String
2024年10月31日
9:37
定义 : 字符串
1.最基础和最常用的数据结构
场景 :
1.缓存简单值
2.计数器
3.分布式锁
命令 :
2.计数操作
incr key | value + 1,适用于整数值 |
decr key | value – 1 |
incrby key num | value + num |
decrby key num | value – num |
incybyfloat key float | key + float,键值增加指定浮点数 |
3.字符串操作
append key value | key末尾追加value |
strlen key | 获取字符串长度 |
getrange key start end | 获取[start,end]的子字符串 |
setrange key offset value | 从offset开始,设置为value |
getset key newValue | 返回key的value,同时更新为newValue |
Hash
2024年10月31日
9:40
定义 : 哈希
1.键值对集合,一个key中存储了多个key-value
场景 :
1.适合存储对象数据,如用户信息等
命令 :
1.设置和获取操作
hset key field value | 设置哈希表中字段的值 |
hget key field | 获取哈希表中指定字段的值 |
hmset key field value… | 设置哈希表中多个字段的值 |
hmget key field… | 获取哈希表中多个字段的值 |
hgetall key | 获取哈希表中所有的字段和值 |
hsetnx key field value | 仅字段不存在的时候,设置哈希表字段的值 |
2.字段存在性检查和删除
hexists key field | 检查哈希表中指定字段是否存在 |
hdel key field… | 删除一个或多个字段 |
3.计数
hincrby key field num | value + num,自增给定数据 |
hincrbyfloat key field num | value – num,自增给定浮点型数据 |
4.获取
hkeys key | 获取哈希表中所有字段的名称 |
hvals key | 获取哈希表中所有字段的值 |
hlen key | 获取哈希表中字段数量 |
List
2024年10月31日
9:41
定义 : 列表
1.链表数据结构
2.支持左插入,右插入和删除元素
场景 :
1.消息队列
2.任务列表
3.时间轴
命令 :
Set
2024年10月31日
9:43
定义 : 无序集合
1.支持自动去重和快速查询
场景 :
1.标签系统
2.抽奖
3.好友列表
4.其他无需排序的集合操作
命令 :
Sort Set
2024年10月31日
9:45
定义 : 有序集合
1.每个元素都会关联一个分数,按分数排序
场景 :
1.排行榜
2.其他带权重数据的场景
命令 :
Stream
2024年10月31日
9:46
定义 : 流
1.消息流数据结构
2.支持消费者,生产者模型
应用场景 :
1.消息队列
2.事件存储
3.实时数据处理
命令 :