由于线上没有办法直接查看redis缓存的存在状态,过期时间,值是多少;在没有安装管理工具,或者管理工具没法查看的情况下,就需要使用原生办法,命令如下:
redis登录
找到 redis-cli 命令;一般在安装文件下的 bin 文件夹下
# redis-cli -h 主机地址(默认本机) -p 端口号(默认6379) -a 密码
./redis-cli -p 7000 -a mypassword
redis操作
字符串
----设置key 和value
# set key
set name zs
set age 12
set sex nan
----通过keyname获取
# get key
get name
----通过keyname删除
# del key
del name
----查看key类型
# type key
type age //string 说明type返回的是键值对存储类型,而不是值存储类型
----查看全部key 或者指定key
#全部 keys *或 指定keys key //查看所有或者指定的key
keys *
----查看keyname 前缀相同的key
keys user* (表示查找前缀为user的所有key,*为通配符,表示替代任意数量的所有字符)
----给键值对设置过期时间方法一
# SETEX KEY_NAME TIMEOUT VALUE
setex zs 60 live
----给键值对设置过期时间方法二
EXPIRE KEY_NAME TIME
EXPIRE mykey 300
----获取键值对剩余的存活时间
# ttl key
ttl zs
Redis哈希(Hash)
Redis hash 是一个string类型的field和value的映射表,hash特别适合用于存储对象。
----同时将多个field-value设置到哈希表key中
# hset key field1 value1 [field2 value2]
hset user name 张三 age 12 sex 女
----获取指定的字段值
# hget key field
hget user age
----删除指定的字段值
# hdel key field
hdel user age
----#查询指定key的所有字段
# hgetall key
hgetall user
----查询指定key中的字段是否存在
# hexists key field
hexists user name
----获取指定key中的长度
# hlen key
hlen user
Redis数组列表(List)
Redis列表是简单的字符串列表,按照插入顺序排序。你可以添加一个元素到列表的头部(左边)或者尾部(右边)
----将一个或多个值插入到列表头部 遵循先进后出原则 桶
# lpush key value1 value2 value3
lpush en a b c d e f g
----获取列表的长度
# llen key
llen en
----根据索引获取列表中的元素 下表索引开始数
# lindex key index
lindex en 1 #返回f,说明下标从0开始,同时先进后出
----查看指定范围内的元素 下表索引开始数
# lrange key start sop
lrange en 1 3#返回fed,说明下标从0开始,同时先进后出
Redis数组列表(List)
----将一个或多个值插入到列表头部 遵循先进后出原则 桶
# lpush key value1 value2 value3
lpush en a b c d e f g
----获取列表的长度
# llen key
llen en
----根据索引获取列表中的元素 下表索引开始数
# lindex key index
lindex en 1 #返回f,说明下标从0开始,同时先进后出
----查看指定范围内的元素 下表索引开始数
# lrange key start sop
lrange en 1 3#返回fed,说明下标从0开始,同时先进后出
Redis集合(Set)
Redis 的 Set 是 String 类型的无序不重复集合。集合成员是唯一的,这就意味着集合中不能出现重复的数据。
----向集合添加一个或多个元素
# sadd key value1 [value2]
sadd hobby 吃饭 睡觉 打豆豆
----获取集合中的元素数量
# scard key
scard hobby
----查看key是否存在
# exists key
exists hobby
退出Redis-cli
quit