Redis 通用指令

key 的通用操作

key 基本操作

  • 删除指定 key

    del key

  • 获取 key 是否存在

    exists key

  • 获取 key 的类型

    type key

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

  • 为指定 key 设置有效期

    expire key seconds
    pexpire key milliseconds
    expireat key timestamp
    pexpireat key milliseconds-timestamp
    
  • 获取 key 的有效时间

    ttl key
    pttl key
    

    如果 key 不存在,ttl key 返回 -2;
    如果 key 存在但没有设置过期时间,ttl key 返回 -1;
    如果 key 存在且设置过期时间,过期前 ttl key 返回剩余存活时间,过期后 ttl key 返回 -2;

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

    persist key

key 扩展操作(查询模式)

  • 查询 key

    keys pattern

查询模式规则

* 匹配任意数量的任意符号;? 匹配一个任意符号;[] 匹配一个指定符号

keys *          查询所有
keys it*        查询所有以 it 开头
keys *heima     查询所有以 heima 结尾
keys ??heima    查询所有前面两个字符串结尾,后面以 heima 结尾
kyes user:?     查询所有以user:开头,最后一个字符任意
keys u[st]er:1  查询所有以 u 开头,以 er:1 结尾,中间包含一个字母,s 或 t

key 其他操作

  • 为 key 改名

    rename key newkey
    renamenx key newkey
    
  • 对所有 key 排序

    sort

    sort 排序是排的内部key的顺序

  • 其他 key 通用操作

    help @generic

数据库的通用操作

key 重复的问题

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

解决方案

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

db 基本操作

  • 切换数据库(默认操作的是第0个数据库)

    select index

  • 其他操作

    quit
    ping
    echo message
    
  • 数据移动

    move key db

  • 数据清除

    dbsize // 查看数据库大小
    flushdb // 清楚该数据库
    flushall // 清楚所有数据库,慎用
    
posted @ 2020-04-12 17:30  黄土地上的黑石头  阅读(170)  评论(0编辑  收藏  举报