• Redis启动服务和String常用命令


    Redis启动服务和String常用命令

    1. 启动Redis服务
    E:
    edis>redis-server.exe redis.windows.conf
                    _._
               _.-``__ ''-._
          _.-``    `.  `_.  ''-._           Redis 3.0.504 (00000000/0) 64 bit
      .-`` .-```.  ```/    _.,_ ''-._
     (    '      ,       .-`  | `,    )     Running in standalone mode
     |`-._`-...-` __...-.``-._|'` _.-'|     Port: 6379
     |    `-._   `._    /     _.-'    |     PID: 12052
      `-._    `-._  `-./  _.-'    _.-'
     |`-._`-._    `-.__.-'    _.-'_.-'|
     |    `-._`-._        _.-'_.-'    |           http://redis.io
      `-._    `-._`-.__.-'_.-'    _.-'
     |`-._`-._    `-.__.-'    _.-'_.-'|
     |    `-._`-._        _.-'_.-'    |
      `-._    `-._`-.__.-'_.-'    _.-'
          `-._    `-.__.-'    _.-'
              `-._        _.-'
                  `-.__.-'
    
    [12052] 24 Mar 15:03:37.578 # Server started, Redis version 3.0.504
    [12052] 24 Mar 15:03:37.579 * DB loaded from disk: 0.000 seconds
    [12052] 24 Mar 15:03:37.579 * The server is now ready to accept connections on port 6379
    
    
    2. Redis客户端连接服务
    E:
    edis>redis-cli.exe -h 10.2.136.131 -p 6379 -a 123456
    10.2.136.131:6379>
    

    -h redis服务的ip -p redis服务的端口 -a redis密码

    3. SET
    127.0.0.1:6379> set student:name "xiaoxu"
    OK
    

    set有多个可选参数

    ● EX seconds:用于设置 key 的过期时间为多少秒(seconds)。其中,SET key value EX seconds 等价于 SETEX key seconds value。

    ● PX milliseconds:用于设置 key 的过期时间为多少毫秒(milliseconds)。其中,SET key value PX milliseconds 等价于 PSETEX key milliseconds value。

    ● NX:表示当 key 不存在时,才对 key 进行设置操作。其中,SET key value NX 等价于 SETNX key value。

    ● XX:表示当 key 存在时,才对 key 进行设置操作。

    127.0.0.1:6379> set student:sex man ex 5
    OK
    
    4. MSET

    使用 MSET 命令同时设置多个键值对。MSET 命令是一个原子性操作,所有给定 key 都会在同一时间内被设置更新。

    127.0.0.1:6379> mset student:home "ximeng" student:id 1
    OK
    127.0.0.1:6379> get student:home
    "ximeng"
    

    MSET支持SET的可选参数

    5. GET

    使用 GET 命令获取 key 中设置的字符串值。如果 key 中存储的值不是字符串类型的,则会返回一个错误,因为 GET 命令只能用于处理字符串的值;当 key 不存在时,返回 nil。

    127.0.0.1:6379> get student:sex
    "man"
    127.0.0.1:6379> get student:sex
    (nil)
    
    6. MGET
    127.0.0.1:6379> get student:sex
    "man"
    127.0.0.1:6379> get student:sex
    (nil)
    
    7. GETRANGE :获取键的子字符串值

    使用 GETRANGE 命令来获取 key 中字符串值从 start 开始到 end 结束的子字符串,下标从 0 开始(字符串截取)。start 和 end 参数是整数,可以取负值。当取负值时,表示从字符串最后开始计数,-1 表示最后一个字符,-2 表示倒数第二个字符,以此类推。

    127.0.0.1:6379> getrange student:home 1 3
    "ime"
    
    8. SETBITGETBIT

    SETBIT 命令:设置键的偏移量

    GETBIT 命令:获取键的偏移量

    命令格式:

    setbit key offset value
    getbit key offect
    

    使用 SETBIT 命令对 key 所存储的字符串值设置或清除指定偏移量上的位(bit)。value 参数值决定了位的设置或清除,value 值取 0 或 1。当 key 不存在时,自动生成一个新的字符串值。这个字符串是动态的,它可以扩展,以确保将 value 保存到指定的偏移量上。当这个字符串扩展时,使用 0 来填充空白位置。offset 参数必须是大于或等于 0,并且小于 2^32 (4 294 967 296)(bit 映射被限制在 512MB 之内)的正整数。在默认情况下,bit 初始化为 0。

    经常用来记录网站上的浏览记录,比如:

    127.0.0.1:6379> setbit video:10010 4294967295 1
    (integer) 0
    127.0.0.1:6379> getbit video:10010 4294967295
    (integer) 1
    

    代表第10010编号的video被用户4294967295浏览过。

    9. SETRANGE 命令:替换键的值
    127.0.0.1:6379> get student:name
    "xiaoxu"
    127.0.0.1:6379> setrange student:name 4 wang
    (integer) 8
    127.0.0.1:6379> get student:name
    "xiaowang"
    
    10. GETSET 命令:为键设置新值
    127.0.0.1:6379> getset student:age 18
    "18"
    127.0.0.1:6379> get student:age
    "18"
    
    11. APPEND 命令:为键追加值
    127.0.0.1:6379> append student:name "zuishuai"
    (integer) 16
    127.0.0.1:6379> get student:name
    "xiaowangzuishuai"
    
    12. BITCOUNT 命令:计算比特位数量

    使用 BITCOUNT 命令计算在给定的字符串中被设置为 1 的比特位数量。它有两个参数:start 和 end。如果不设置这两个参数,则表示它会对整个字符串进行计数;如果指定了这两个参数值,则可以让计数只在特定的位上进行。

    127.0.0.1:6379> bitcount video:10010
    (integer) 1
    
    13. BITOP 命令:对键进行位元运算(不常用)
    14. STRLEN 命令:统计键的值的字符长度
    127.0.0.1:6379> strlen student:name
    (integer) 16
    
    15. 对数字类型的值计算

    DECR 命令:让键的值减 1

    DECRBY 命令:键的值减去减量值

    INCR 命令:让键的值加 1

    INCRBY 命令:让键的值加上增量值

    INCRBYFLOAT 命令:让键的值加上浮点数增量值

    127.0.0.1:6379> incr student:age
    (integer) 19
    127.0.0.1:6379> incrby student:age 5
    (integer) 24
    127.0.0.1:6379> incrbyfloat student:age 1.02
    "25.02"
    
  • 相关阅读:
    Android安全机制
    service不死之身
    图片加载机制比较
    handler机制面试
    SharedPreferences封装类
    文字太长自动缩小
    ANR
    onCreate源码分析
    线程池的启动策略
    Oauth认证协议
  • 原文地址:https://www.cnblogs.com/undefined22/p/12563883.html
Copyright © 2020-2023  润新知