• Redis学习笔记(二)-key相关命令【转载】


    转自

    Redis学习笔记(二)-key相关命令 - 点解 - 博客园
    http://www.cnblogs.com/leny/p/5638764.html

    Redis支持的各种数据类型包括string,list ,set ,sorted set 和hash .

      Redis本质上一个key-value db,所以我们首先来看看他的key。首先key也是字符串类型,但是key中不能包括边界字符。由于key不是binary safe的字符串,所以像"my key"和"mykey "这样包含空格和换行的key是不允许的。顺便说一下在redis内部并不限制使用binary字符,这是redis协议限制的。" "在协议格式中会作为特殊字符。

      Redis 1.2以后的协议中部分命令已经开始使用新的协议格式了(比如MSET)。总之目前还是把包含边界字符当成非法的key吧,免得被bug纠缠。另外关于key的一个格式约定介绍下,object-type:id:field。比如user:1000:password,blog:xxidxx:title,还有key的长度最好不要太长。道理很明显占内存啊,而且查找时候相对短key也更慢。不过也不推荐过短的key,比如u:1000:pwd,这样的。显然没上面的user:1000:password可读性好。

      get 和 set 命令:

      set和get命令

      key相关的命令:

      exits key 测试指定key是否存在,返回1表示存在,0不存在

      

      del key1 key2 ....keyN 删除给定key,返回删除key的数目,0表示给定key都不存在

      

      type key 返回给定key的value类型。返回none 表示不存在key,string字符类型,list 链表类型set 无序集合类型...

      

      keys pattern 返回匹配指定模式的所有key

      

      randomkey 返回从当前数据库中随机选择的一个key,如果当前数据库是空的,返回空串

      

      rename oldkey newkey 原子的重命名一个key,如果newkey存在,将会被覆盖。如果oldkey不存在或者和newkey相同则报错,返回错误信息

          

      renamenx oldkey newkey 同上,但是如果newkey存在返回失败

      dbsize 返回当前数据库的key数量

      

      expire key seconds 为key指定过期时间,单位是秒。返回1成功,0表示key已经设置过过期时间或者不存在

      ttl key 返回设置过过期时间的key的剩余过期秒数-1表示key不存在或者没有设置过过期时间

      

      select db-index 通过索引选择数据库,默认连接的数据库所有是0,默认数据库数是16个。返回1表示成功,0失败

      

      move key db-index 将key从当前数据库移动到指定数据库。返回1成功。0 如果key不存在,或者已经在指定数据库中

      

      flushdb 删除当前数据库中所有key,此方法不会失败。慎用

      flushall 删除所有数据库中的所有key,此方法不会失败。更加慎用

      

  • 相关阅读:
    Netty章节二十三:Netty自定义实现粘包与粘包
    Netty章节二十二:Netty自定义编解码器
    Netty章节二十一:Netty的ByteBuf
    Netty章节二十:Netty中的理论与实践
    Netty章节十八:Netty Server Start 源码分析
    Netty章节十七:Zero-copy,零拷贝
    Netty章节十六:Java NIO
    Netty章节十五:Nodejs使用gRPC与Java进行远程通信
    UML类图
    Java中虚函数和纯虚函数
  • 原文地址:https://www.cnblogs.com/paul8339/p/5643186.html
Copyright © 2020-2023  润新知