打开 https://github.com/tporadowski/redis/releases
下载带 win64.zip 字样的文件,例如 Redis-x64-7.2.4-win64.zip 解压到任意目录
比如 D:\redis
双击 redis-server.exe 就启动服务
再双击 redis-cli.exe 即可执行 ping 测试
基本使用
# 字符串
SET name Tom
GET name
INCR counter
# 哈希
HSET user:1 name Tom age 20
HGETALL user:1
# 列表
LPUSH todo "buy milk"
LPUSH todo "write code"
LRANGE todo 0 -1
LPOP todo
# 集合
SADD tags redis database
SMEMBERS tags
# 有序集合
ZADD scoreboard 100 Tom 90 Jerry
ZREVRANGE scoreboard 0 -1 WITHSCORES
# 过期
SET code 1234 EX 60
TTL code
字符串(String)相关命令
SET name Tom
:设置键name
的值为Tom
(字符串类型)GET name
:获取键name
的值(会返回Tom
)INCR counter
:将键counter
的值自增 1(适用于整数类型,类似的还有DECR
自减)
哈希(Hash)相关命令
HSET user:1 name Tom age 20
:在哈希表user:1
中设置字段,name
的值为Tom
,age
的值为20
HGETALL user:1
:获取哈希表user:1
中所有的字段和对应值(会返回name Tom age 20
)
列表(List)相关命令
LPUSH todo "buy milk"
:向列表todo
的左侧(头部)添加元素"buy milk"
LPUSH todo "write code"
:继续向列表todo
左侧添加元素"write code"
(此时列表顺序是["write code", "buy milk"]
)LRANGE todo 0 -1
:获取列表todo
从索引0
到-1
(最后一个元素)的所有元素LPOP todo
:移除并返回列表todo
左侧的第一个元素(会返回"write code"
)
集合(Set)相关命令
SADD tags redis database
:向集合tags
中添加元素redis
和database
(集合中元素唯一,无序)SMEMBERS tags
:返回集合tags
中的所有元素(顺序不固定)
有序集合(ZSet)相关命令
ZADD scoreboard 100 Tom 90 Jerry
:向有序集合scoreboard
中添加元素,Tom
的分数是100
,Jerry
的分数是90
(有序集合按分数排序)ZREVRANGE scoreboard 0 -1 WITHSCORES
:按分数从高到低返回有序集合scoreboard
所有元素,并附带分数(会返回Tom 100 Jerry 90
)
过期时间相关命令
SET code 1234 EX 60
:设置键code
的值为1234
,并指定过期时间为60
秒(60 秒后该键会自动删除)TTL code
:查看键code
的剩余生存时间(单位:秒,返回-2
表示已过期,-1
表示永不过期)