zoukankan      html  css  js  c++  java
  • redis命令行命令

    配置文件设置密码认证

    修改redis.conf
    去掉#requirepass foobared前面的#,foobared就是密码,可以进行修改

    redis命令设置密码认证
    config set requirepass my_redis

    连接相关命令

    quit: 断开连接
    auth:简单密码认证

    127.0.0.1:6379> keys *
    (error) NOAUTH Authentication required.
    127.0.0.1:6379> auth my_redis
    OK
    127.0.0.1:6379> keys *
    1) "key"

    持久化

    save:将数据同步保存到磁盘


    bgsave:将数据异步保存到磁盘

    lastsave:返回上次成功将数据保存到磁盘的Unix时戳

    shundown:将数据同步保存到磁盘,然后关闭服务

    远程服务控制
    info:提供服务器的信息和统计
    monitor:实时转储收到的请求
    slaveof:改变复制策略设置,配置主节点
    config:在运行时配置Redis服务器


    对value操作的命令
    exists(key):确认一个key是否存在

    127.0.0.1:6379> exists key
    (integer) 1
    127.0.0.1:6379> exists key1
    (integer) 0

    del(key):删除一个key

    127.0.0.1:6379> del key
    (error) READONLY You can't write against a read only slave.


    slave只能查询不能修改,所以需要到master上操作

    127.0.0.1:6379> del key
    (integer) 1
    127.0.0.1:6379> exists key
    (integer) 0
    127.0.0.1:6379>

    type(key):返回值的类型

    127.0.0.1:6379> set key 1123
    OK
    127.0.0.1:6379> type key
    string

    keys(pattern):返回满足给定pattern的所有key

    127.0.0.1:6379> keys *
    1) "key"


    randomkey:随机返回key空间的一个

    127.0.0.1:6379> set key1 22
    OK
    127.0.0.1:6379> randomkey
    "key1"
    127.0.0.1:6379> randomkey
    "key"
    127.0.0.1:6379>


    dbsize:返回当前数据库中key的数目

    127.0.0.1:6379> dbsize
    (integer) 2

    expire:设定一个key的活动时间(单位秒(s))

    127.0.0.1:6379> expire key 2
    (integer) 1
    127.0.0.1:6379> get key
    (nil)
    127.0.0.1:6379>

    ttl:获得一个key的活动时间

    127.0.0.1:6379> set key4 33
    OK
    127.0.0.1:6379> ttl key4
    (integer) -1
    127.0.0.1:6379> 
    127.0.0.1:6379> expire key4 20
    (integer) 1
    127.0.0.1:6379> ttl key4
    (integer) 14
    127.0.0.1:6379>

    select index 按索引查询

    127.0.0.1:6379[2]> flushdb
    OK
    127.0.0.1:6379[2]> select 1
    OK
    127.0.0.1:6379[1]> set k1 v1
    OK
    127.0.0.1:6379[1]> keys *
    1) "k1"
    127.0.0.1:6379[1]> seelct 2
    (error) ERR unknown command 'seelct'
    127.0.0.1:6379[1]> select 2
    OK
    127.0.0.1:6379[2]> keys *
    (empty list or set)
    127.0.0.1:6379[2]> select 1
    OK
    127.0.0.1:6379[1]> keys *
    1) "k1"

    move(key, dbindex):移动当前数据库中的key到dbindex数据库

    127.0.0.1:6379[2]> flushdb
    OK
    127.0.0.1:6379[2]> select 1
    OK
    127.0.0.1:6379[1]> set k1 v1
    OK
    127.0.0.1:6379[1]> keys *
    1) "k1"
    127.0.0.1:6379[1]> seelct 2
    (error) ERR unknown command 'seelct'
    127.0.0.1:6379[1]> select 2
    OK
    127.0.0.1:6379[2]> keys *
    (empty list or set)
    127.0.0.1:6379[2]> select 1
    OK
    127.0.0.1:6379[1]> keys *
    1) "k1"
    127.0.0.1:6379[1]> move k1 2
    (integer) 1
    127.0.0.1:6379[1]> select 2
    OK
    127.0.0.1:6379[2]> keys *
    1) "k1"
    127.0.0.1:6379[2]> select 1
    OK
    127.0.0.1:6379[1]> keys *
    (empty list or set)

    flushdb:删除当前选择数据库中的所有key

    127.0.0.1:6379[1]> flushdb
    OK
    127.0.0.1:6379[1]> keys *
    (empty list or set)

    flushall:删除所有数据库中的所有key


    对String操作的命令


    set(key, value):给数据库中名称为key的string赋予值value

    127.0.0.1:6379[1]> set k1 v1
    OK
    127.0.0.1:6379[1]> keys *
    1) "k1"
    

      

    get(key):返回数据库中名称为key的string的value

    127.0.0.1:6379[1]> get k1
    "v1"
    

      

    getset(key, value):将给定 key 的值设为 value ,并返回 key 的旧值(old value)

    127.0.0.1:6379[1]> set k3 v3
    OK
    127.0.0.1:6379[1]> getset k3 v4
    "v3"
    127.0.0.1:6379[1]>
    

      

    mget(key1, key2,…, key N):返回库中多个string的value

    127.0.0.1:6379[1]> mget k1 k2 k3 k4 k5
    1) "v1"
    2) "v2"
    3) "v4"
    4) (nil)
    5) (nil)
    

      

    setnx(key, value):key不存在时,设置key的值

    127.0.0.1:6379[1]> setnx k1 v9
    (integer) 0
    127.0.0.1:6379[1]> get k1
    "v1"
    127.0.0.1:6379[1]> setnx k5 v5
    (integer) 1
    127.0.0.1:6379[1]> get k5
    "v5"
    127.0.0.1:6379[1]>
    

      

    setex(key, time, value):将值 value 关联到 key ,并将 key 的过期时间设为 seconds (以秒为单位)。

    127.0.0.1:6379[1]> setex k6 10 v6
    OK
    127.0.0.1:6379[1]> get k6
    "v6"
    127.0.0.1:6379[1]> get k6
    (nil)
    127.0.0.1:6379[1]>
    

      

    mset(key N, value N):批量设置多个string的值

    127.0.0.1:6379[1]> mset kkk1 vvv1 kkk2 vvv2 kkk3 vvv3
    OK
    127.0.0.1:6379[1]> mget kkk1 kkk2 kkk3
    1) "vvv1"
    2) "vvv2"
    3) "vvv3"
    

      

    msetnx(key N, value N):如果所有名称为key i的string都不存在,类似setnx

    incr(key):名称为key的string增1操作

    127.0.0.1:6379[1]> set i 1
    OK
    127.0.0.1:6379[1]> incr i
    (integer) 2
    127.0.0.1:6379[1]> get i
    "2"
    127.0.0.1:6379[1]>
    

      

    incrby(key, integer):名称为key的string增加integer

    127.0.0.1:6379[1]> incrby i 5
    (integer) 7
    127.0.0.1:6379[1]> get i
    "7"
    127.0.0.1:6379[1]>
    

    decr(key):名称为key的string减1操作

    127.0.0.1:6379[1]> decr i
    (integer) 6
    127.0.0.1:6379[1]> get i
    "6"

    decrby(key, integer):名称为key的string减少integer

    127.0.0.1:6379[1]> decrby i 4
    (integer) 2
    127.0.0.1:6379[1]> get i
    "2"
    

    append(key, value):名称为key的string的值附加value

    127.0.0.1:6379[1]> set temp temp
    OK
    127.0.0.1:6379[1]> append temp append
    (integer) 10
    127.0.0.1:6379[1]> get temp
    "tempappend"
    127.0.0.1:6379[1]>
    

      

    substr(key, start, end):返回名称为key的string的value的子串

    127.0.0.1:6379[1]> substr temp 1 3
    "emp"
    127.0.0.1:6379[1]>
    

      


    对List的操作

    rpush(key, value):在名称为key的list尾添加一个值为value的元素
    lpush(key, value):在名称为key的list头添加一个值为value的 元素
    llen(key):返回名称为key的list的长度
    lrange(key, start, end):返回名称为key的list中start至end之间的元素
    ltrim(key, start, end):截取名称为key的list
    lindex(key, index):返回名称为key的list中index位置的元素
    lset(key, index, value):给名称为key的list中index位置的元素赋值
    lrem(key, count, value):删除count个key的list中值为value的元素
    lpop(key):返回并删除名称为key的list中的首元素
    rpop(key):返回并删除名称为key的list中的尾元素
    blpop(key1, key2,… key N, timeout):lpop命令的block版本。
    brpop(key1, key2,… key N, timeout):rpop的block版本。
    rpoplpush(srckey, dstkey):返回并删除名称为srckey的list的尾元素,并将该元素添加到名称为dstkey的list的头部

    127.0.0.1:6379[1]> rpush list1 v1
    (integer) 1
    127.0.0.1:6379[1]> lpush list1 v2
    (integer) 2
    127.0.0.1:6379[1]> llen list1
    (integer) 2
    127.0.0.1:6379[1]> lrange list 0 1
    (empty list or set)
    127.0.0.1:6379[1]> lrange list 1 2
    (empty list or set)
    127.0.0.1:6379[1]> lrange list1 0 1
    1) "v2"
    2) "v1"
    127.0.0.1:6379[1]> ltrim list1 0 1
    OK
    127.0.0.1:6379[1]> lindex 0 0
    (nil)
    127.0.0.1:6379[1]> lindex list1 0
    "v2"
    127.0.0.1:6379[1]> lset list1 0 value1
    OK
    127.0.0.1:6379[1]> lrem list1 1 value1
    (integer) 1
    127.0.0.1:6379[1]> rpush list1 v2
    (integer) 2
    127.0.0.1:6379[1]> lpush list1 v3
    (integer) 3
    127.0.0.1:6379[1]> lpop list1
    "v3"
    127.0.0.1:6379[1]> rpop list1
    "v2"
    127.0.0.1:6379[1]> brpop list1 3
    1) "list1"
    2) "v1"
    127.0.0.1:6379[1]> blpop list1 3
    (nil)
    (3.04s)
    127.0.0.1:6379[1]> rpush list2 v2
    (integer) 1
    127.0.0.1:6379[1]> lpush list2 v3
    (integer) 2
    127.0.0.1:6379[1]> rpoplpush list2 list3
    "v2"
    

      


    set操作命令

    sadd(key, member):向名称为key的set中添加元素member
    srem(key, member) :删除名称为key的set中的元素member
    spop(key) :随机返回并删除名称为key的set中一个元素
    smove(srckey, dstkey, member) :移到集合元素
    scard(key) :返回名称为key的set的成员个数
    sismember(key, member) :member是否是名称为key的set的元素
    sinter(key1, key2,…key N) :求交集
    sinterstore(dstkey, (keys)) :求交集并将交集保存到dstkey的集合
    sunion(key1, (keys)) :求并集
    sunionstore(dstkey, (keys)) :求并集并将并集保存到dstkey的集合
    sdiff(key1, (keys)) :求差集
    sdiffstore(dstkey, (keys)) :求差集并将差集保存到dstkey的集合
    smembers(key) :返回名称为key的set的所有元素
    srandmember(key) :随机返回名称为key的set的一个元素

    127.0.0.1:6379[1]> sadd set1 v1
    (integer) 1
    127.0.0.1:6379[1]> srem set1 v1
    (integer) 1
    127.0.0.1:6379[1]> sadd set1 v1
    (integer) 1
    127.0.0.1:6379[1]> sadd set1 v2
    (integer) 1
    127.0.0.1:6379[1]> sadd set1 v3
    (integer) 1
    127.0.0.1:6379[1]> sadd set1 v4
    (integer) 1
    127.0.0.1:6379[1]> spop set1
    "v3"
    127.0.0.1:6379[1]> sadd set2 v2
    (integer) 1
    127.0.0.1:6379[1]> smove set1 set2 v3
    (integer) 0
    127.0.0.1:6379[1]> scard set1
    (integer) 3
    127.0.0.1:6379[1]> sismember set1 v1
    (integer) 1
    127.0.0.1:6379[1]> sismember set1 v9
    (integer) 0
    127.0.0.1:6379[1]> sinter set1 set2
    1) "v2"
    127.0.0.1:6379[1]> sinterstore set3 set1 set2
    (integer) 1
    127.0.0.1:6379[1]> sdiff set1 set2
    1) "v4"
    2) "v1"
    127.0.0.1:6379[1]> sdiffstore set4 set1 set2
    (integer) 2
    127.0.0.1:6379[1]> smembers set1
    1) "v2"
    2) "v4"
    3) "v1"
    127.0.0.1:6379[1]> srandmeber set1
    (error) ERR unknown command 'srandmeber'
    127.0.0.1:6379[1]> srandmember set1
    "v4"
    

      

    对Hash操作的命令

    hset(key, field, value):向名称为key的hash中添加元素field
    hget(key, field):返回名称为key的hash中field对应的value
    hmget(key, (fields)):返回名称为key的hash中field i对应的value
    hmset(key, (fields)):向名称为key的hash中添加元素field
    hincrby(key, field, integer):将名称为key的hash中field的value增加integer
    hexists(key, field):名称为key的hash中是否存在键为field的域
    hdel(key, field):删除名称为key的hash中键为field的域
    hlen(key):返回名称为key的hash中元素个数
    hkeys(key):返回名称为key的hash中所有键
    hvals(key):返回名称为key的hash中所有键对应的value
    hgetall(key):返回名称为key的hash中所有的键(field)及其对应的value

    127.0.0.1:6379[1]> hset hash1 k1 v1
    (integer) 1
    127.0.0.1:6379[1]> hget hash1 k1
    "v1"
    127.0.0.1:6379[1]> hset hash1 k2 v2
    (integer) 1
    127.0.0.1:6379[1]> hmget hash1 k1 k2
    1) "v1"
    2) "v2"
    127.0.0.1:6379[1]> hmset hash1 k3 v3 k4 v4
    OK
    127.0.0.1:6379[1]> hget hash1 k3
    "v3"
    127.0.0.1:6379[1]> hget hash1 k4
    "v4"
    127.0.0.1:6379[1]> hset hash1 i 1
    (integer) 1
    127.0.0.1:6379[1]> hincrby hash1 i 5
    (integer) 6
    127.0.0.1:6379[1]> hexists hash1 k6
    (integer) 0
    127.0.0.1:6379[1]> hexists hash1 k1
    (integer) 1
    127.0.0.1:6379[1]> hdel hash1 k1
    (integer) 1
    127.0.0.1:6379[1]> hlen hash1
    (integer) 4
    127.0.0.1:6379[1]> hvals hash1
    1) "v2"
    2) "v3"
    3) "v4"
    4) "6"
    127.0.0.1:6379[1]> hgetall hash1
    1) "k2"
    2) "v2"
    3) "k3"
    4) "v3"
    5) "k4"
    6) "v4"
    7) "i"
    8) "6"
    127.0.0.1:6379[1]>
    

    java操作Redis使用jedis jar包

     

  • 相关阅读:
    innodb_fast_shutdown中值为1或者2的区别是?
    C语言解析日志,存储数据到伯克利DB 2
    (2010-8-31) awk内存泄漏以及缓慢的正则表达式计算速度
    C语言解析日志,存储数据到伯克利DB
    awk的接口实现方案1
    谷歌开源Gumbo:纯C语言实现的HTML5解析库
    pylint
    提高写代码的能力(转载)
    python的闭包以及闭包在设计里的意图和作用
    痛并快乐的造轮子之旅:awk访问数据库之旅
  • 原文地址:https://www.cnblogs.com/heml/p/6657035.html
Copyright © 2011-2022 走看看