Redis入门

作者: yingzong | 来源:发表于2016-06-10 22:58 被阅读467次

    一、环境准备

    下载、安装Redis
    $ wget http://download.redis.io/releases/redis-3.2.0.tar.gz  
    $ tar xzf redis-3.2.0.tar.gz  
    $ cd redis-3.2.0  
    $ make  
    
    启动服务端
    $ src/redis-server  
    
    启动客户端
    $ src/redis-cli
    redis> set foo bar
    OK
    redis> get foo
    "bar"
    

    二、简介

    Redis是一个key-value结构的NoSQL数据库,value支持5种数据结构:Strings Lists Sets Sorted Sets Hashes

    下面会按照Redis Tutorial,简单介绍一下各种数据结构的常用命令。

    Strings

    命令:SET GET DEL

    SET user:name "yingzong"
    

    设置user:name的值为yingzong

    GET user:name => "yingzong"
    

    获取user:name,符号=>后面的内容是命令的输出结果。

    DEL user:name => "(integer) 1"  
    

    删除user:name,可以用于删除所有数据类型的key。

    Lists

    命令:RPUSH LPUSH LLEN LRANGE LPOP RPOP
    特点:有序、可重复

    RPUSH users "user1" => "(integer) 1"
    RPUSH users "user2" => "(integer) 2"
    RPUSH users "user3" => "(integer) 3"
    

    在list右侧插入元素。

    LPUSH users "user4" => "(integer) 4"  
    

    在list左侧插入元素。

    LLEN users => "(integer) 4"  
    

    获取list长度。

    LRANGE users 0 -1
    => 1) "user4"
    => 2) "user1"
    => 3) "user2"
    => 4) "user3"
    

    获取list中的元素,从0开始到最后一个(-1)。

    LPOP users => "user4"  
    

    从list左侧删除元素。

    RPOP users => "user3"  
    

    从list右侧删除元素。

    Sets

    命令:SADD SREM SMEMBERS
    特点:无序、不重复

    SADD users "user1" => "(integer) 1"
    SADD users "user2" => "(integer) 1"
    SADD users "user3" => "(integer) 1"  
    SADD users "user3" => "(integer) 0"  
    

    向set中增加元素。

    SMEMBERS users
    => 1) "user3"
    => 2) "user2"
    => 3) "user1"
    

    获取set中的所有元素。

    SREM users "user2" => "(integer) 1"  
    

    删除set中的某个元素。

    Sorted Sets

    命令:ZADD ZRANGE
    特点:有序、不重复

    ZADD users 100 "user1" => "(integer) 1"
    ZADD users 200 "user2" => "(integer) 1"
    ZADD users 300 "user3" => "(integer) 1"
    

    向set中添加元素。

    ZADD users 400 "user1" => "(integer) 0"
    

    向set中添加重复元素,会覆盖原有值的score,影响排序。

    ZRANGE users 0 -1  
    => 1) "user2"
    => 2) "user3"
    => 3) "user1"  
    

    获取set中的元素。

    Hashes

    命令:HSET HGET HGETALL HDEL
    特点:一个key内可以包含多个属性,适合用来存储对象

    HSET user name "yingzong" => "(integer) 1"
    HSET user location "hangzhou" => "(integer) 1"
    

    设置user的name和location属性值。

    HGETALL user
    => 1) "name"
    => 2) "yingzong"
    => 3) "location"
    => 4) "hangzhou"
    

    获取user的所有属性值。

    HGET user location => "hangzhou"
    

    获取user的location属性值。

    HDEL user location => "(integer) 1"
    

    删除user的location属性。

    相关文章

      网友评论

        本文标题:Redis入门

        本文链接:https://www.haomeiwen.com/subject/favsdttx.html