zoukankan      html  css  js  c++  java
  • redis常用操作

    1、DEL key [key ...]

    删除给定的一个或多个 key 。
    
    不存在的 key 会被忽略。
    
    返回值:
        被删除 key 的数量。

    实例:

    127.0.0.1:6379> set kinds science
    OK
    127.0.0.1:6379> del kinds #删除键
    (integer) 1
    
    127.0.0.1:6379> exists kinds #删除不存在的键
    (integer) 0
    127.0.0.1:6379> 
    DEL

    2、EXISTS key

    检查给定 key 是否存在。
    
    返回值:
        若 key 存在,返回 1 ,否则返回 0 

    实例:

    127.0.0.1:6379> set db mysql
    OK
    127.0.0.1:6379> exists db
    (integer) 1
    127.0.0.1:6379> del db
    (integer) 1
    127.0.0.1:6379> exists db
    (integer) 0
    EXISTS

    3、KEYS pattern

    查找所有符合给定模式 pattern 的 key 。
    
    KEYS * 匹配数据库中所有 key 。
    KEYS h?llo 匹配 hello , hallo 和 hxllo 等。
    KEYS h*llo 匹配 hllo 和 heeeeello 等。
    KEYS h[ae]llo 匹配 hello 和 hallo ,但不匹配 hillo 。
    特殊符号用  隔开
    
    返回值:
        符合给定模式的 key 列表。

    实例:

    127.0.0.1:6379> keys *
     1) "apple"
     2) "l1"
     3) "l5"
     4) "zstov1"
     5) "z1"
     6) "s7"
     7) "harry"
    
    127.0.0.1:6379> keys a*
    1) "apple"
    2) "author"
    KEYS

    4、MOVE key db

    将当前数据库的 key 移动到给定的数据库 db 当中。
    
    如果当前数据库(源数据库)和给定数据库(目标数据库)有相同名字的给定 key ,或者 key 不存在于当前数据库,那么 MOVE 没有任何效果。
    
    返回值:
        移动成功返回 1 ,失败则返回 0 。

    实例:

    #将数据库中的键k1移动到第一个数据库中
    127.0.0.1:6379> set k1 v1
    OK
    127.0.0.1:6379> move k1 1
    (integer) 1
    127.0.0.1:6379> exists k1
    (integer) 0
    MOVE

    5、EXPIRE key seconds

    为给定 key 设置生存时间,当 key 过期时(生存时间为 0 ),它会被自动删除。

    实例:

    127.0.0.1:6379> set k1 v1
    OK
    127.0.0.1:6379> expire k1 5 #设置k1的生存时间
    (integer) 1
    EXPIRE

    6、PERSIST key

    移除给定 key 的生存时间,将这个 key 从『易失的』(带生存时间 key )转换成『持久的』(一个不带生存时间、永不过期的 key )。
    127.0.0.1:6379> set k2 v2
    OK
    127.0.0.1:6379> expire k2 15 #设置过期时间
    (integer) 1
    127.0.0.1:6379> persist k2 #取消过期时间
    (integer) 1
    127.0.0.1:6379> ttl k2 #查看过期时间
    (integer) -1
    PERSIST

    7、RANDOMKEY

    从当前数据库中随机返回(不删除)一个 key 。
    
    返回值:
        当数据库不为空时,返回一个 key 。
        当数据库为空时,返回 nil 。

    实例:

    127.0.0.1:6379> randomkey
    "time1"
    RANDOMKEY

    8、FLUSHD

    删除当前数据库所有 key

    9、RENAME key newkey

    将 key 改名为 newkey 。
    
    当 key 和 newkey 相同,或者 key 不存在时,返回一个错误。
    
    当 newkey 已经存在时, RENAME 命令将覆盖旧值。
    127.0.0.1:6379>  rename message message1
    OK
    127.0.0.1:6379> exists message
    (integer) 0
    127.0.0.1:6379> exists message1
    (integer) 1
    RENAME

    10、SORT key [BY pattern] [LIMIT offset count] [GET pattern [GET pattern ...]] [ASC | DESC] [ALPHA] [STORE destination]

    返回或保存给定列表、集合、有序集合 key 中经过排序的元素。
    
    排序默认以数字作为对象,值被解释为双精度浮点数,然后进行比较。
    
    最简单的 SORT 使用方法是 SORT key 和 SORT key DESC :
                              SORT key 返回键值从小到大排序的结果。
                              SORT key DESC 返回键值从大到小排序的结果。        
    127.0.0.1:6379> lpush salary 2000 6000 5000 3000
    (integer) 4
    127.0.0.1:6379> sort salary  #升序
    1) "2000"
    2) "3000"
    3) "5000"
    4) "6000"
    127.0.0.1:6379> sort salary desc #降序
    1) "6000"
    2) "5000"
    3) "3000"
    4) "2000"
    SORT

    11、TTL key

    以秒为单位,返回给定 key 的剩余生存时间(TTL, time to live)。

    实例:

    #设置key但没有设置时间
    127.0.0.1:6379> set key value
    OK
    127.0.0.1:6379> ttl key
    (integer) -1
    
    #设置时间为20s
    127.0.0.1:6379> expire key 20
    (integer) 1
    127.0.0.1:6379> ttl key #查看剩余生存时间
    (integer) 14
    TTL

    12、TYPE key

    返回 key 所储存的值的类型。

    返回值:
        none (key不存在)
        string (字符串)
        list (列表)
        set (集合)
        zset (有序集)
        hash (哈希表)

    实例:

    #哈希类型
    127.0.0.1:6379> hset boy name bright
    (integer) 1
    127.0.0.1:6379> type boy
    hash
    
    #字符串类型
    127.0.0.1:6379> set fruit apple
    OK
    127.0.0.1:6379> type fruit
    string
    
    #列表类型
    127.0.0.1:6379> lpush animals dog cat penguim
    (integer) 3
    127.0.0.1:6379> type animals
    list
    TYPE

    13、SCAN cursor [MATCH pattern] [COUNT count]

    SCAN 命令用于迭代当前数据库中的数据库键。
    
    SCAN 命令是一个基于游标的迭代器(cursor based iterator): SCAN 命令每次被调用之后, 都会向用户返回一个新的游标, 
    用户在下次迭代时需要使用这个新游标作为 SCAN 命令的游标参数, 以此来延续之前的迭代过程。 当 SCAN 命令的游标参数被设置为 0 时, 服务器将开始一次新的迭代, 而当服务器向用户返回值为 0 的游标时, 表示迭代已结束。

    实例:

    127.0.0.1:6379> scan 0
    1) "50"
    2)  1) "food"
        2) "time"
        3) "pear"
        4) "z2"
        5) "flowers"
        6) "zstov2"
        7) "num"
        8) "fruit"
        9) "mylist"
       10) "l1"
    127.0.0.1:6379> scan 50
    1) "62"
    2)  1) "kinds"
        2) "z3"
        3) "l5"
        4) "author"
        5) "apple"
        6) "salary"
        7) "num2"
        8) "strw"
        9) "z1"
       10) "name2"
       11) "l3"
    # SCAN 命令的回复是一个包含两个元素的数组, 第一个数组元素是用于进#行下一次迭代的新游标, 而第二个数组元素则是一个数组, 这个数组中包#含了所有被迭代的元素。当返回的第一个数组元素是0时,说明已经完整的#遍历了所有元素。
    scan

    参考:http://doc.redisfans.com/

  • 相关阅读:
    10条建议帮助你创建更好的jQuery插件
    jQuery的end()方法使用详解
    jquery合并表格中相同文本的相邻单元格
    jQuery动态星级评分效果实现方法
    jQuery过滤HTML标签并高亮显示关键字的方法
    jQuery实现高亮显示网页关键词的方法
    深入.net调用webservice的总结分析
    C#中遍历各类数据集合的方法总结
    asp.net后台cs中的JSON格式变量在前台Js中调用方法(前后台示例代码)
    使用交叉验证对鸢尾花分类模型进行调参(超参数)
  • 原文地址:https://www.cnblogs.com/shenjianping/p/11166085.html
Copyright © 2011-2022 走看看