Key通用命令

特征

  • key是一个字符串,通过key获取redis中保存的数据

key应该设计那些操作?

  • 对于key自身状态的相关操作,例如:删除,判定存在,获取类型等
  • 对于key有效性控制相关操作,例如:有效期设定,判定是否有效,有效状态的切换等
  • 对于key快速查询操作,例如:按指定策略查询key

key基本操作

  • 删除指定key

del key

  • 获取key是否存在

exists key

  • 获取key的类型

type key 

key扩展操作(时效性控制)

  • 为指定key设置有效期

expire key seconds
pexpire key milliseconds
expireat key timestamp
pexpireat key millinseconds-timestamp

  • 获取key有效时间

ttl key     //正数:剩余时间秒数  -2:已失效,key不存在了   -1:key存在,未设置有效时间
pttl key   //以毫秒为单位返回剩余有效时间

  • 切换key从时效性转换为永久性

persist key

key扩展操作(查询模式)

  • 查询key

keys pattern

查询模式规则

redis获取时长 redis获取key剩余时间_数据库

redis获取时长 redis获取key剩余时间_redis_02

key其他操作

  • 为key改名

rename key newkey            //如果已经有newkey的数据,直接覆盖,所以使用时一定要慎重
renamenx key newkey        //如果已经有,则失败

  • 对所有key排序

sort                   //针对list,set,sorted set,不动元数据,仅显示结果按顺序

  • 其他key通用操作

help @generic

 

redis获取时长 redis获取key剩余时间_数据_03

数据库通用命令

key重复问题

  • key是由程序员定义的
  • redis在使用过程中,伴随着操作数据量的增加,会出现大量的数据以及对应的key
  • 数据不区分种类,类别混杂在一起,极易出现重复或冲突

解决方案

  • redis为每个服务器提供有16个数据库,编号从0-15
  • 每个数据库之间的数据互相独立

db 基本操作

  • 切换数据库

select index

  • 其他操作

quit
ping
echo message

  • 数据移动

move key db    //首先要保证移入的数据库中没有待移入的key

  • 数据清除

dbsize     //当前数据库的数据量
flushdb    //清除当前数据库中的数据
flushall    //清楚所有数据库中的数据