一、redis中的常见数据结构
Redis共有5种常见数据结构,分别字符串(STRING)、列表(LIST)、集合(SET)、散列(HASH)、有序集合(ZSET)。
二、redis中字符串(String)介绍
String 类型是一个 k-v 键值对形式的数据类型,一个 key 对应一个 value。
三、常见命令
1.Redis 默认有16个数据库(0~15),默认使用第0个
可以使用
select进行切换

2.查看数据库大小
使用
dbsize查看数据库大小

3.查看所有的key(当前库)
使用
keys *

4.清除当前数据库
flushdb
5.清空所有数据库
flushall
6.判断key是否存在
existskey
7.移除key
movekey 1 // 1 表示移动到哪个数据库
delkey // 删除当前数据库的key(可以多个)

8.设置key的过期时间
expirekey 时间 // 单位时间为s
ttlkey // 查看剩余存活时间

9.查看当前key的类型
typekey
10.字符串追加(String)
appendkey appendValue
- 如果当前 key 不存在,作用相当于 set key
11.获取字符串长度(String)
strlenkey

12.字符串i++操作(可用于阅读量实现)(String)
incrkey

同理,i --
decrkey
incrbykey 步长
decrbykey 步长

13.字符串片段 Range (String)(Range:范围)
getrangekey [startIndex] [endIndex]
- 对应java里的substring(但是这里会endIndex是一个闭区间)
- 特例,endIndex = -1 时,表示从startIndex 到最后

14.字符串替换 (String)(Range:范围)
setrangekey index replaceString
- 对应java里的replace
- 注意,如果replaceString是一个字符串,那么会替换源字符串中index后replaceString长度的片段,结果如下

15.特殊set设置 (String)
setex(set with expire)
setexkey 时间 value // 设置值,带过期时间

setnx(set if not exist)
setnxkey value // 如果不存在,则设置

16.批量设置、批量获取(原子性操作) (String)
msetk1 v1 k2 v2 …
mgetk1 k2 …

- 特殊
msetnx批量设置(要么都成功,要么都失败)(原子性)
17.设置高阶 (String)
getsetkey value // 先get再set(如果不存在,先返回nil,在设置值;如果存在,就先返回原值,再设置新值)

18.重命名key
renamekey newName

![[ 云计算 华为云 ] 华为云开天 aPaaS:构建高效的企业数字化平台(上)](https://img-blog.csdnimg.cn/img_convert/da8592699932fba550f8a828451ce000.png)

















