二、安装

下载地址:http://download.redis.io/releases/redis-3.2.11.tar.gz

安装依赖:

yum install -y gcc g++ gcc-c++ make 

新建redis文件夹,上传压缩包redis-3.2.11.tar.gz。

解压:tar xzf redis-3.2.11.tar.gz

进入解压文件:cd redis-3.2.11

编译:make

(注:若编译报错可参考安装gcc编译器)

安装:make install PREFIX=/redis/redis

(/redis/redis 无此文件安装时会自动生成)

yum 安装 redis启动 redis安装命令_有序集合

此时redis文件夹中只有一个bin文件夹,相当于redis的一个节点,这里将bin目录修改名字,以便后续添加多个redis时好做区分。

yum 安装 redis启动 redis安装命令_yum 安装 redis启动_02

yum 安装 redis启动 redis安装命令_yum 安装 redis启动_03

Redis01文件夹下有服务启动程序和客户端启动程序。

yum 安装 redis启动 redis安装命令_有序集合_04

退回到解压文件,找到redis配置文件

yum 安装 redis启动 redis安装命令_yum 安装 redis启动_05

这里对配置文件做简单配置;

yum 安装 redis启动 redis安装命令_yum 安装 redis启动_06

将修改后的文件复制到redis01目录下

yum 安装 redis启动 redis安装命令_yum 安装 redis启动_07

启动服务:redis-server redis.conf

yum 安装 redis启动 redis安装命令_redis_08

不关闭服务新开窗口到redis01文件夹下,运行客户端程序,并做简单测试。

yum 安装 redis启动 redis安装命令_字段_09

./redis-cli -h 192.168.180.115 -p 1001 (连接集群时要加-c)

-h 指定服务ip

-p 指定端口号

此客户端程序可连接已开启的不同节点的redis服务。

四、常用命令

   存储:set key value

   获取:get key

      存储并设置有效时间:set key seconds value

              查看有效时间:ttl key

              查看过期时间(毫秒):pttl key

              移除key的过期时间:persist key

              只有当key不存在是设置key值(如果指定的 key 已经存在 则会设置失败): setnx key value

              设置多个键值:mset key varlve [key value]

              获取多个键值:mget key [key]

              将给定的key设置为value,并返回key 的旧值:get set key value

              获取值长度:strken key

      根据内容获取所有key:keys rock*

      判断键是否存在:exits key

              获取值的类型:type key

              删除key对应的值:del key [key]

              设置过期时间:expire key seconds

              删除数据库的所有:flushdb

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

      修改key的名称:rename key newkey

              随机返回一个key:random key

------ Hash:Map结构,字典结构,键值对集合 一个key 对应 字典

              设置单个值:hset key filed value

              设置多个值:hset key filed value [filed velue]

              获取一个属性的值:hget key filed

              获取多个属性的值:hmget key filed [filed]

              获取所有的字段和值:hgetall key

              获取所有的字段: hkeys key

              获取所有的值:hvals key

              获取包含数据的个数:hlen key

              判断属性是否存在:hexit key filed

              删除字段及值:hdel key filed [filed]

              返回字符串长度:hstrlen key field

------- list(列表)

              在头部插入:lpush key value

              将一个值插入到已存在列表的头部,列表不存在时操作无效:lpushx key value

              在尾部插入:rpush key value

              将一个值插入到已存在列表的尾部:rpushx key value

              在一个元素的前后插入新的元素:linsert key before|after priorvalue inservalue

              移除并返回key对应的list的第一个元素:lpop key

              移除并返回key对应的list的最后一个元素:rpop key

              获取存储在key的列表的指定单位的元素(支持负值):lrange key start end

              剪裁列表:ltrim key start end

              获取列表的长度:llen key

              返回列表中索引对应的值:lindex key index

------- set集合:无需集合,元素类型为String类型,元素具有唯一性,不重复

      添加元素:sadd key member [member]

      获取所有的元素:smembers key

              返回集合元素个数:scard key

              移除并返回集合中的一个随机元素:spop key

              返回集合中的一个或多个随机数:srandomember key count

              移除集合中的一个或多个元素:srem ky member [member]

              集合操作求多个集合的交集:sinter key [key]

              求多的集合的差集 注意顺序:sdiff key [key]

              求多个集合的合集:sunion key [key]

              判断元素是否在集合中:sismember key member

  

------- Zset有序集合 元素类型为string,元素具有唯一性

              添加元素:add key score member [ score member ]

              有序集合中对指定成员的score(权重)加上增量:zincrby key increValue  member

              获取指定范围的元素:zrange key start end

              返回元素个数:zcard key

              返回有序集合key中,score在start和end之间的元素个数:zcount key start end