zoukankan      html  css  js  c++  java
  • redis常用命令汇总

    # 查看所有的key
    127.0.0.1:6379> keys *
    # 判断一个key是否存在
    exists name
    # 将当前key移动到其他库
    move name 1
    # expire 给这个key设置过期时间
    127.0.0.1:6379> set key value 
    OK
    127.0.0.1:6379> expire name 10 
    (integer) 1 
    127.0.0.1:6379> ttl name 
    (integer) 6
    # type 查看当前 key 的类型!
    127.0.0.1:6379> type name 
    string
     
    String(字符串)
    # ==============================
    #  set get del keys EXISTS append STRLEN
    # incr decr incrby decrby
    # ================
     
    append key1 "hello" # 对key内容进行追加,如果没有值,等同于 set key1
    incr number    #每次只增1
    
    decr number # 每次自减一
    
    incrby number 5  # 每次增加步长5
    
    decrby number 5 # 每次减少步长5
    # ==============================
    # range [范围]
    # getrange SETRANGE
    # ================
    127.0.0.1:6379> getrange key2 0 -1 # 获取全部的字符串 
    "abcdefg123456" 
    127.0.0.1:6379> getrange key2 0 2 # 获取 [0,1,2] 
    "abc"
    127.0.0.1:6379> SETRANGE key2 1 xx # SETRANGE 替换了指定的字符串! 
    (integer) 13 
    127.0.0.1:6379> get key2 
    "axxdefg123456"
    # 记住:我们现在讲解的所有命令,就是未来在java中使用的命令!
    # ==============================
    # setex(exipre) setnx (in not exist)
    # ================
    127.0.0.1:6379> setex key3 60 exipre # setex 设置过期时间,验证码5分钟过期!
    OK
    127.0.0.1:6379> ttl key3
    (integer) 56
    # 如果原来我们是版本号,那现在我们可以理解为信号量!
    127.0.0.1:6379> setnx mykey "redis" # 如果不存在就设置值,成功返回1
    (integer) 1
    127.0.0.1:6379> setnx mykey "mongodb" # 如果不存在就设置值,失败返回0
    (integer) 0
    127.0.0.1:6379> get mykey
    "redis"
    # 批量机制
    # ==============================
    # mset mget msetnx
    # ================
    127.0.0.1:6379> mset k10 v10 k11 v11 k12 v12
    OK
    127.0.0.1:6379> keys *
    1) "k11"
    2) "k12"
    3) "mykey"
    4) "views"
    5) "k10"
    6) "key2"
    7) "key1"
    127.0.0.1:6379> mget k10 k11 k12
    1) "v10"
    2) "v11"
    3) "v12"
    127.0.0.1:6379> msetnx k10 10 k13 v13 # msetnx是一个原子性的操作,要么同时成功要么同
    时失败
    (integer) 0
    # 例子:测试例子
    # 传统,json保存对象
    set user:1 value(json数据库)
    # 直接通过缓存来缓存对象,我么是可以通过一些手段来实现对象缓存操作的!发散思维!可以省去解析的过
    程!
    # 以后在java代码中,要获取对象 mget user:{id}:name user:{id}:age
    mset user:1:name zhangsan user:1:age 2
    mget user:1:name user:1:age
    # ==============================
    # getset 先get返回结果,然后在set值!
    # ================
    127.0.0.1:6379> getset db mongodb # 没有旧值,就返回 (nil)
    (nil)
    127.0.0.1:6379> get db
    "mongodb"
    127.0.0.1:6379> getset db redis # 若果存在旧的值,那么就返回旧的值,然后设置新值!
    "mongodb"
    127.0.0.1:6379> get db
    "redis
  • 相关阅读:
    js基础
    linux 权限计算
    postman 测试http post的json请求
    Crontab 让linux定时执行shell脚本
    Java:扫描包含图片的文件夹,将符合分辨率格式的复制出来
    php引用其他目录的php文件
    电脑屏幕动图制作之-----GifCam
    通过Excel表创建sql脚本
    通过Navicat将Excel表中的数据导入到数据库
    需求设计之初造火箭?
  • 原文地址:https://www.cnblogs.com/alenblue/p/12893594.html
Copyright © 2011-2022 走看看