数据类型
字符串 string, 哈希 hash, 链表 list, 集合 set, 排序集合 zset
字符串(string)
数据为字符串. 保存方式是二进制数据. 二进制数据是可以指定长度的,无结束标记的数据.
数据长度有限制: 512M
哈希(hash)
数据为哈希表. 类似java中的Map.
键值对存储结构类似java中的Map<String, Map<String, String>>
链表(list)
数据为一个有序的链表集合
键值对存储结构类似java中的Map<String, List<String>>
集合(set)
数据为一个无下标的集合, 数据不重复
数据结构类似java中的Map<String, Set<String>>
排序集合(zset)
数据为一个可排序的集合. 数据不重复
数据结构类似java中的Map<String, SortedSet<String>>
排序规则为字符串对应的二进制数据的大小排序.
通用命令
keys
查询当前redis中的key值, 例如:
keys *
注意: 测试时可以使用 keys *, 实际环境中慎用. 因为keys *会导致Redis暂时被锁住,其他的请求都会被阻塞,对于业务体量比较小的,倒是无关痛痒,但是当业务量达到百万千万级别的时候,这个会造成Redis崩溃,从而导致其他的业务崩溃。
incr
incr - increment 自增
incr key
要求key对应的数据, 必须是数学数据. value字符串必须可以转换为数字. 如果key不存在,则自动增加一个键值对, value为1.
decr
decr - decrement 自减
decr key
要求key对应的数据,必须是数学数据. value字符串必须可以转换为数字. 如果key不存在,则自动增加一个键值对, value为-1.
incrby
incrby - increment by
incrby key 数字
要求key对应的数据,必须是数学数据. 使用指定步长,实现数据递增. 如果key不存在, 则自动增加一个键值对, value为0
decrby
decrby - decrement by
decrby key 数字
要求key对应的数据,必须是数学数据. 使用指定步长,实现数据递减. 如果key不存在, 则自动增加一个键值对, value为0
incrbyfloat
incrbyfloat key 浮点数
要求key对应的数据,必须是数学数据. 使用指定步长,实现数据递增和递减. 如果key不存在, 则自动增加一个键值对, value为0
expire
设定有效时长. 键值对在redis中保存的时长.
expire key seconds
设定指定key的有效时长为多少秒
ttl
查看有效时长剩余时间.
ttl key
返回正数 : 剩余有效时长为多少秒
返回-1 : 代表永久保存
返回-2 : 代表无key对应的键值对
persist
取消有效时长
persist key
info
查看redis信息. information
select
切换数据库. 通过数据库编号切换库. 默认16个库, 编号0~15
select 数据库编号
flushdb
清空当前使用的database.
flushall
清空所有的数据库
quit
退出连接
字符串命令
新增+修改
set key value
设置一个键值对. 如果key不存在,则新增, key存在则修改.
查询
get key
通过一个key,获取value. 如果key不存在,返回nil
删除
del key [ key2 key3 ...]
通过一个key,删除键值对. 也可以实现批量删除.
批量删除 del key1 key2 key3 ….
del也是通用命令. 可以删除任意类型的数据
批量新增 + 批量修改
mset key1 value1 key2 value2 ...
命令参数必须成对出现.
批量查询
mget key1 key2 key3 ...
哈希命令
新增数据 + 修改数据
hset key field value
新增一个数据. key键值, field是属性|字段值, value数据值
查询数据
hget key field
通过key和field获取value数据
删除一个field-value数据
hdel key field
通过key和field删除数据
如果删除key对应所有field-value对,则key自动删除.
批量新增+批量修改
hmset key field1 value1 field2 value2 ...
要求field和value成对出现.
批量查询
hmget key field1 field2 ...
查看所有的filed
hkeys key
通过key数据,查看对应所有field值
查看所有的value
hvals key
通过key数据,查看所有的value.
查看所有的field-value对
hgetall key
来源:CSDN
作者:YaoRoy
链接:https://blog.csdn.net/YaoRoy/article/details/104816502