zoukankan      html  css  js  c++  java
  • redis命令操作之generic和string.java

    redis是键值对的内存数据库,属于Nosql范畴
    登录redis自带的客户端
    #redis-cli
    127.0.0.1:6379>
    1.设置redis 键值对
    > set foo bar  #设置键foo的值为"bar"
    OK #设置成功


    2.获得redis 键值对
    > get foo #根据键获得值
    "bar" #返回的结果


    3.删除键值对 
    127.0.0.1:6379> del foo foo2 foo3 #删除键值对,可删除多个
    (integer) 3 #删除成功的键值对的个数


    4.返回空
    127.0.0.1:6379> get foo #如果键值对不存在,返回nil
    (nil)


    5.判断键值对是否存在,返回0:不存在,返回1:存在;只能查询一个键。


    127.0.0.1:6379> EXISTS foo
    (integer) 0
    127.0.0.1:6379> set foo bar
    OK
    127.0.0.1:6379> EXISTS foo
    (integer) 1
    127.0.0.1:6379> EXISTS foo foo2 foo3
    (error) ERR wrong number of arguments for 'exists' command


    6.设置键值对有效期
    127.0.0.1:6379> EXPIRE foo 32 #设置foo键有效期为32秒
    (integer) 1


    7.根据键的表达式,查找符合表达式的键
    127.0.0.1:6379> keys foo*
    1) "foo3"
    2) "foo2"
    3) "foo"


    8.自动将一个key从一个redis实例传输到另一个
    MIGRATE host port key destination-db timeout
    summary: Atomically transfer a key from a Redis instance to another one.
    since: 2.6.0


    9.将一个key移到另一个数据库
    MOVE key db
    summary: Move a key to another database
    since: 1.0.0


    10.检查内部的redis对象
    OBJECT subcommand [arguments [arguments ...]]
    summary: Inspect the internals of Redis objects
    since: 2.2.3


    11.从key中移除过期时间
    PERSIST key
    summary: Remove the expiration from a key
    since: 2.2.0


    127.0.0.1:6379> set foo bar
    OK
    127.0.0.1:6379> EXPIRE foo 32
    (integer) 1
    127.0.0.1:6379> PERSIST foo
    (integer) 1


    12.获取键值对的存活时间(微秒)
    PTTL key
    summary: Get the time to live for a key in milliseconds
    since: 2.6.0


    127.0.0.1:6379> EXPIRE foo 32
    (integer) 1
    127.0.0.1:6379> pttl foo
    (integer) 27944
    13.获取键值对存活时间(秒)
    TTL key
    summary: Get the time to live for a key
    since: 1.0.0




    13.设置微秒级别的键值对存活时间
    PEXPIRE key milliseconds
    summary: Set a key's time to live in milliseconds
    since: 2.6.0


    14.设置微秒级别的unix形式的时间,键值对存活时间
    PEXPIREAT key milliseconds-timestamp
    summary: Set the expiration for a key as a UNIX timestamp specified in milliseconds
    since: 2.6.0


    15.随机获取一个键
    RANDOMKEY -
    summary: Return a random key from the keyspace
    since: 1.0.0


    127.0.0.1:6379> RANDOMKEY
    "foo2"
    16.重命名键
    RENAME key newkey
    summary: Rename a key
    since: 1.0.0


    127.0.0.1:6379> rename foo12 foo13
    OK


    17.重命名键,新键不存在时
    RENAMENX key newkey
    summary: Rename a key, only if the new key does not exist
    since: 1.0.0


    127.0.0.1:6379> RENAMENX foo13 foo3 #foo3已经存在执行不成功
    (integer) 0


    18.备份键值对
    DUMP key
    summary: Return a serialized version of the value stored at the specified key.
    since: 2.6.0
    127.0.0.1:6379> dump foo
    "x00x03barx06x00pS!xe0x1b3xc1x84"


    19.还原键值对
    RESTORE key ttl serialized-value
    summary: Create a key using the provided serialized value, previously obtained using DUMP.
    since: 2.6.0


    20.获取键的类型
    TYPE key
    summary: Determine the type stored at key
    since: 1.0.0
    127.0.0.1:6379> type foo3
    string


    21.按键排序
    SORT key [BY pattern] [LIMIT offset count] [GET pattern [GET pattern ...]] [ASC|DESC] [ALPHA] [STORE destination]
    summary: Sort the elements in a list, set or sorted set
    since: 1.0.0


    /****** string类型的命令操作 ********/
    1.将值添加到键的值得后面
    APPEND key value
    summary: Append a value to a key
    since: 2.0.0
    127.0.0.1:6379> append foo3 barbar
    (integer) 10
    127.0.0.1:6379> get foo3
    "bar3barbar"


    2.
    BITCOUNT key [start] [end]
    summary: Count set bits in a string
    since: 2.6.0
    127.0.0.1:6379> bitcount foo3
    (integer) 34
    127.0.0.1:6379> bitcount foo13
    (integer) 16


    3."不懂"
    BITOP operation destkey key [key ...]
    summary: Perform bitwise operations between strings
    since: 2.6.0


    4.将值减小1(键对应的值必须为int)
    DECR key
    summary: Decrement the integer value of a key by one
    since: 1.0.0


    127.0.0.1:6379> set num1 13
    OK
    127.0.0.1:6379> get num1
    "13"
    127.0.0.1:6379> decr num1
    (integer) 12
    127.0.0.1:6379> get num1
    "12"


    5.将值减小指定大小(键对应的值必须为int)
    DECRBY key decrement
    summary: Decrement the integer value of a key by the given number
    since: 1.0.0
    127.0.0.1:6379> get num1
    "12"
    127.0.0.1:6379> DECRBY num1 6
    (integer) 6
    127.0.0.1:6379> get num1
    "6"


    6.为键重新复制,并返回之前的旧值
    GETSET key value
    summary: Set the string value of a key and return its old value
    since: 1.0.0


    7. 
    GETBIT key offset
    summary: Returns the bit value at offset in the string value stored at key
    since: 2.2.0


    8.
    GETRANGE key start end
    summary: Get a substring of the string stored at a key
    since: 2.4.0


    9.为key设置string值,并返回原先的值
    GETSET key value
    summary: Set the string value of a key and return its old value
    since: 1.0.0


    127.0.0.1:6379> get foo13
    "bar12nametest"
    127.0.0.1:6379> getset foo13 test
    "bar12nametest"


    10. 将value类型为int的值加1
    INCR key
    summary: Increment the integer value of a key by one
    since: 1.0.0
    127.0.0.1:6379> set num 10
    OK
    127.0.0.1:6379> get num
    "10"
    127.0.0.1:6379> INCR num
    (integer) 11


    11. 将value类型为int的值加指定的数
    INCRBY key increment
    summary: Increment the integer value of a key by the given amount
    since: 1.0.0
    127.0.0.1:6379> get num
    "11"
    127.0.0.1:6379> INCRBY num 10
    (integer) 21
    127.0.0.1:6379> get num
    "21"


    12.将value类型为float的值加上指定的数
    INCRBYFLOAT key increment
    summary: Increment the float value of a key by the given amount
    since: 2.6.0


    127.0.0.1:6379> set flo 11.2
    OK
    127.0.0.1:6379> get flo
    "11.2"
    127.0.0.1:6379> INCRBYFLOAT flo 12.0
    "23.2"


    13.获取多个key的value
    MGET key [key ...]
    summary: Get the values of all the given keys
    since: 1.0.0
    127.0.0.1:6379> MGET foo2 foo3 foo4
    1) "bar2"
    2) "bar3barbar"
    3) (nil)




    14.设置多个key的value
    MSET key value [key value ...]
    summary: Set multiple keys to multiple values
    since: 1.0.1
    127.0.0.1:6379> MSET foo2 bar22 foo3 bar33 foo4 bar44
    OK
    127.0.0.1:6379> MGET foo2 foo3 foo4
    1) "bar22"
    2) "bar33"
    3) "bar44"


    15.当所有的key都不存在时,设置value
    MSETNX key value [key value ...]
    summary: Set multiple keys to multiple values, only if none of the keys exist
    since: 1.0.1
    127.0.0.1:6379> MSETNX foo2 bar23 foo5 bar55 ##因为foo2键已经存在
    (integer) 0


    16.设置键的微秒生存时间和值
    PSETEX key milliseconds value
    summary: Set the value and expiration in milliseconds of a key
    since: 2.6.0


    17.设置键的秒生存时间和值
    SETEX key seconds value
    summary: Set the value and expiration of a key
    since: 2.0.0




    18.设置值
    SET key value [EX seconds] [PX milliseconds] [NX|XX]
    summary: Set the string value of a key
    since: 1.0.0


    19.
    SETBIT key offset value
    summary: Sets or clears the bit at offset in the string value stored at key
    since: 2.2.0


    20.在键不存在时,设置值
    SETNX key value
    summary: Set the value of a key, only if the key does not exist
    since: 1.0.0


    21.从offset位置写入新的值内容
    SETRANGE key offset value
    summary: Overwrite part of a string at key starting at the specified offset
    since: 2.2.0
    127.0.0.1:6379> set foo5 jing
    OK
    127.0.0.1:6379> get foo5
    "jing"
    127.0.0.1:6379> SETRANGE foo5 3 test
    (integer) 7
    127.0.0.1:6379> get foo5
    "jintest"


    22.获取值得长度
    STRLEN key
    summary: Get the length of the value stored in a key
    since: 2.2.0
    127.0.0.1:6379> STRLEN foo5
    (integer) 4































  • 相关阅读:
    三 面向对象之绑定方法与非绑定方法
    二 面向对象三大特性
    一 面向对象定义
    面向对象路线
    七 递归与二分法、匿名函数、内置函数
    线程同步测试
    Oracle12c的安装
    git教程:添加远程仓库
    git教程:远程仓库
    git教程:删除文件
  • 原文地址:https://www.cnblogs.com/JZZ1026/p/4417314.html
Copyright © 2011-2022 走看看