- redis-cli -p 5566 -a password:登录
- redis-cli -a password shutdown :关闭redis
- ./redis_init_script stop :关闭redis
- auth pwd :输入密码
- redis-cli -a password ping :查看是否存活
- select index:切换数据库,总共默认16个
- flushdb:删除当前下边db中的数据
- flushall:删除所有db中的数据
key相关
- exists key:检查key是否存在
- ksys *4:搜索某关键字
- keys *:查看所有的键
- type key:返回一个key的类型
- dbsize:查看当前数据库中有多少个key
- rename oldkey newkey:修改键的名字
string 字符串
string: 最简单的字符串类型键值对缓存,也是最基本的
- set key value:设置一个键的值
- get key :获得键值
- del key :删除键
- setnx key value:如果key存在value不会覆盖之前的值,如果key不存等同于set
- expire key 30:设置key的过期时间为30秒,也可以这样设置,set key value ex 30
- ttl key:查看key还剩余多少时间过期,-1代表没有过期时间。-2代表已经过期
- append key value:字符串拼接,把value拼接到key的值中
- strlen key:查看字符串key的长度
- incr key:累加1
- decr key:累减1
- incrby key num:累加给定数值
- decrby key num:累减给定数值
- incrbyfloat key float:累加给定的小数
- getrange key start end:截取数据,end=-1 代表到最后
- setrange key start newdata:从start位置开始替换数据
- mset key1 value1 key2 value2:连续设值
- mget key1 key2:连续取值
- msetnx key1 value1 key2 value2:连续设置,如果存在则不设置
hash
hash:类似map,存储结构化数据结构,比如存储一个对象(不能有嵌套对象)
- hset key property value:创建一个key对象,这个对象中包含property 属性,值为value
- hget key property :获得key 对象中property的值
- hmset user age 18 phone 139123123:设置对象中的多个键值对
- hmsetnx user age 18 phone 139123123:设置对象中的多个键值对,存在则不添加
- hmget user age phone::获得对象中的多个属性
- hgetall user:获得整个对象的内容
- hlen user:有多少个属性
- hkeys user:获得所有属性
- hvals user:获得所有值
- hexists user age:判断属性是否存在 存在返回1,不存在返回0
- hincrby user age 2:累加属性给定数值
- hincrbyfloat user age 2.2:累加属性给定数值(小数)
- hdel key property :删除键对应的属性的键值对
- del key:删除
list
list:列表,[a, b, c, d, …]
- lpush userList one two third:构建一个list,从左边开始存入数据
- rpush userList one two third :构建一个list,从右边开始存入数据
- lrange userList start end:获得数据.end= -1代表直到最后
- lpop userList:从左侧开始删除一个值,返回删除的值
- rpop userList:从右侧开始删除一个值,返回删除的值
- llen userList:长度
- lindex userList index:获取userList下标为index的值
- lset userList index value:替换下标为index的值为value
- linsert userList before/after value(之前存在的值) newvalue:插入一个新的值newvalue在value的前/后
- lrem userList num value:删除num个值都为value的数据
- ltrim userList start end:截取新的list,替换原来的list
- del userList :删除
Set
set集合是无序不可重复的
- sadd set value value1:创建一个set集合,并把value,value1添加进入集合
- smembers set:查看set集合中所有的值
- scard set:查看set集合中值的个数
- sismember set value:查看value值在不在set集合中,1表示在集合中,0表示不在
- srem set value:删除set集合中的value
- spop set num:出栈(随机)num个元素,即删除num个元素,如果不写num则随机出栈一个。返回出栈的元素。
- srandmember set num :随机在set集合中获取num个元素
- smove set1 set2 value:把set1集合中的value元素移动到set2中,set1中不在有value元素
- sdiff set1 set2:集合set1和set2的差集
- sinter set1 set2:集合set1和set2的交集
- sunion set1 set2:集合set1和set2的并集
zset(sorted set)
sorted set:排序的set,可以去重可以排序
- zadd zset 10 value1 20 value2:创建一个zset集合且设置value1和对应的分数10,value2和对应的分数20
- zrange zset 0 -1:查看所有zset中的内容,-1代表直到最后
- zrange zset 0 -1 withscores:查看所有zset中的内容,带有分数,升序(按分值)
- zrevrange zset 0 -1 withscores:查看所有zset中的内容,带有分数,降序(按分值)
- zrank zset value:获得value对应的下标
- zscore zset value:获得value对应的分数
- zcard zset:统计zset集合中元素的个数
- zcount zset:分数1 分数2:统计zset集合中在分数1和分数2之间的元素个数,包括分数1和分数2
- zrangebyscore zset 分数1 分数2:查询分数之间的元素(包含分数1 分数2)
- zrangebyscore zset (分数1 (分数2:查询分数之间的元素(不包含分数1 和 分数2),“( ”代表不包含。
- zrangebyscore zset 分数1 分数2 limit start end:查询分数之间的元素(包含分数1 分数2),获得的结果集再次根据下标区间做查询重 start 开始取end个
- zrem zset value:删除zset集合中的value元素
- zincrby zset 5 value:给zset中的value加5分