Redis3.0.4基础操作(一)

    安装: Centos7,装好GCC(yum install gcc),解压redis.tar.gz ,进redis目录,make   然后 makeinstall

    1 ‘redis-server /myredis/redis.conf  ’ 启动redis服务

    2 ‘redis-cli -p 6379 ’   

    3  ‘select  库Index   ’(默认16,即最高15)              切换库

    4     ' keys *  '        查看所有的key 

    5     'keys   x*'       查看所有以x开头的key

    6    ''set  key名称  Value             设值

    7     'get  key名称  '           获取key的对应value

    8   'FLUSHDB  '        清空当前库

    9   'FLUSHAll'           清空所有库

    10 'DBSIZE    '           查看当前库的key的数量

    11  Redis 索引默认从0开始, 端口默认6379 

    Redis常用的五大数据类型:String、Hash、List、Set、ZSet(sorted set 有序集合)

    ZSet和Set一样也是String类型元素的集合。而且不允许重复的成员,不同的是每个元素都会关联一个double类型的分数,Redis正是通过分数来为集合中的成员进行从小到大的排序(类似斗地主120人赛的积分排序),ZSet的成员是唯一的,但是分数(score)却可以重复。

-----------------------------------------------------------------------------------------------------------------------------------------

    String :

    redis常见数据类型的操作命令:http://redisdoc.com

    12 'EXISTS key名字'     判断某个key是否存在?1:0

    13 'MOVE key名字  DB的索引 '        将当前key移动到某个DB里

    14‘EXPIRE key名字  秒钟数’       设置某个key的存活时间,时间到了就消失

    15‘ttl key名字’      查看某个key还有多少秒过期       -1表示永不过期   -2表示已过期

    16‘type key’     查看key 的类型

    17‘setnx key名字 value’       给key设置,前提是这个key不存在,若存在,没反应

    18‘INCR/DECR/INCRBY/DECRBY’+key  |  +key + int             让对应的value值变化,前提必须是数字

    19 ‘setrange  key + 位数 + ‘内容’ /getrange key +  区间’          给对应的value的对应区间设置值,或者取到某个value对应缺件的值

    20         ’ STRLEN / APPEND /DEL    +key‘  查看对应value的长度,以及追加对应的value,以及删除key

    21         'mset k1 v1 k2 v2'   'mget k1 k2'        设多个key,取多个key 

    22      ‘msetnx  k3 v3  k4 v4’    设多个key,前提是 这些key不存在,若存在,则失败

    -------------------------------------------------------------------------------------------------------------------------------------       List:

    23  ‘lpush /rpush  列表名  元素内容’   新建一个列表,(从左进入或者从右进入)  每个索引上的值,用空格隔开 
           ‘lrange  列表名  区间’  获取列表对应区间的值      。 若要全部查看,则是 ‘lrange 列表名  0 -1’

    24   ‘lpop’/‘rpop’ + 列表名             让对应列表的最左或者最右元素出栈   

    25   ‘lindex’+ 列表名 + 索引               按照索引获得对应列表的元素         

    26  ‘llen’+ 列表名                                  获取对应列表的长度

    27  ‘lrem + 列表名 + 删除个数  +要删除的元素’         删除列表里的重复元素,指定个数                                         

    28  ‘ ltrim +列表名 +区间  ’        截取该列表的区间的元素,并且将该列表的值置为 截取到的元素                                  

    29  ‘rpoplpush ’ 源列表 目标列表        将源列表的右边第一个出栈,并且置于目标列表最左侧

    30   ‘lset +列表名 +index+ value’           将列表的对应索引的值更改为value                  

    31   ‘linsert+ 列表名+ before/after+ 元素  插入值’      将列表里指定元素的之前或者之后 插入 数值

    
-----------------------------------------------------------------------------------------------------------------------------------------

   Set:

    32 ‘sadd   集合名   集合元素     ’                      新建一个集合,集合元素即集合后面指定的

          ‘   smembers   + 集合名 ’                          查看集合里的所有元素

          ‘   sismember  +  集合名 + 元素值  ’          判断某个集合里面是不是有该元素?1:0

    33 ‘scard  集合名’                                            查看集合里面的元素个数

    34    srem +集合名 +  value                                  删除集合中的某个元素                                               

    35    srandmember 集合名  整数                           随机展示集合中的【整数】个元素    

    36    spop + 集合名                                               某个元素随机出栈  ,消失                             

    37    smove 集合1  集合2  在集合1的1个值            将集合1的1个值移动到集合2 

    38    差集:   SDIFF set01 set02                            取集合1的和集合2的差集,但是是以集合1作为标准的,也就是取集合1里有的,集合2里没有的。

            交集: SINTER set01 set02                     取集合1和集合2 的公共部分

            并集: SUNION set01 set02                   取集合1和集合2 的并集

-----------------------------------------------------------------------------------------------------------------------------------------
Hash:

     39‘hset   哈希名 key名 value ’              创建一个哈希1 , 以及里面的一对key/value 
     40‘hget   哈希名  key名’                       取哈希里的对应key的value
     41  ‘hmset   哈希名  k/v   k/v    ’                 创建一个哈希,以及同时指定里面的多对 key/value

     42  ‘hmget   哈希名  k1 k2 ...   ’                  一次查询出来 哈希里的多个key
     43  ‘hgetall   哈希名     ’                              取出 哈希里的所有key  /value           
     44   ‘hdel    哈希名  key名   ’                        删除哈希里的指定的key                                                                        
     45 ‘ hlen    哈希名  ’                                    获取到此哈希的长度  (1个key/value算1)

     46  ‘hexists  key名    ’                                  判断某个key是否存在于哈希中
     47   ‘hkeys  / hvals    + 哈希名’                    显示此哈希里的所有key/所有value     

     48  ‘hincrby  哈希名 key名  int数值 ’           让此哈希里的key 值加  数值                        
     49  ‘hincrbyfloat 哈希名 key名  float数值   让此哈希里的key 值加  数值           
     50   ‘hsetnx  哈希名  key名 value  ’               增加一对key/value 给此哈希     前提是增加的键值对是之前不存在的
-----------------------------------------------------------------------------------------------------------------------------------------

ZSet    
     51、   ‘ zadd  zset名 元素1/score  元素2/score 元素3/score ’  创建一个zset,里面有3个元素以及每个元素对应的score
     52、   ‘zrange  zset名   0  -1 ’             查看这个zset里面的所有元素

     53、   ‘zrangebyscore  zset名 开始score 结束score’     查看这个zset里,score区间对应的元素
     54、 ‘zrem zset名  某个value’      删除某个zset里的某个元素(即value)  //value删除后,score自动也没了 

     55、‘zcard + zset名’                           获取zset里的元素个数
     56、‘zcount zset名 score区间’               获取zset里 score区间的元素个数

     57、‘zrank zset名 元素名’                    查看当前元素在zset里的排名                        
     58、‘zrevrank zset名 元素’             查看当前元素的逆序

     59、‘zrevrange  zset名  0  -1’        逆序输出zset里的元素排名 (52的逆序)

     60 、 ‘zrevrangebyscore  zset名 结束score  开始score’        逆序

     61 、 ‘ZSCORE  zset名 元素’        查看这个元素所对应的score

     62、 ‘MULTI’            开启事务     (成功后返回OK) 
         事务开启时候,命令都将进入队列。
         ‘EXEC’             执行事务      (执行队列里的命令,要么全部成功,要么全部失败)(注意:如果在事务开启时,加入了非           法操作,此条操作直接,报出ERROR,没有加入队列,EXEC会导致事务全部失败,而在事务开启时,加入了非法操作,           但是这 个操作已经加入了队列,则在执行事务时候,正常操作正常执行,非法操作会出错,不会导致全部失败。类似受检查异常和运行  时异常,部分支持事务,即不保证原子性,没有回滚)
         ‘   DISCARD’           放弃事务      (事务所执行的命令以及部分改动全部取消)

    63、 ‘ UNWATCH  ’         取消WATCH命令对所有Key 的监视
    64、 ‘WATCH’  key.../[key]       //类似乐观锁    监视一个或者多个key,如果在事务执行之前,这个key或者这些key被其他命令      所改动,那么事务将被打断。       

    消息的订阅和发布:先订阅,然后再给频道发布内容后,才能收到消息

      65、 订阅频道: SUBSCRIBE  频道号(比如a)       //也可以一次订阅多个频道     eg: SUBSCRIBE a b c       

     也可用通配符 *  :PSUBSCRIBE  cctv*                   //当给cctv开头的频道发消息时,不管是cctv几,订阅者都可以收到。

     66、 给频道发消息 : PUBLISH a i am message        //当消息发布后,订阅者就可以收到消息

猜你喜欢

转载自blog.csdn.net/Akanarika520/article/details/84034832