REDIS常用命令操作(带截屏)
- 格式:doc
- 大小:857.48 KB
- 文档页数:30
redis用法Redis,全称Remote Dictionary Server,是一个开源的内存数据结构存储系统,它支持多种数据结构,如字符串、哈希表、列表、集合、有序集合等。
Redis的特点是速度快、可扩展性强、数据持久化等,因此被广泛应用于缓存、消息队列、计数器、排行榜、实时系统等场景。
本文将介绍Redis的用法,包括基本命令、数据结构、事务、持久化、主从复制、哨兵等方面。
一、基本命令Redis的基本命令包括字符串操作、哈希表操作、列表操作、集合操作、有序集合操作等,以下是一些常用的命令:1.字符串操作SET key value:设置key对应的值为value。
GET key:获取key对应的值。
DEL key:删除key及其对应的值。
INCR key:将key对应的值加1。
DECR key:将key对应的值减1。
2.哈希表操作HSET key field value:为key对应的哈希表中的field设置值为value。
HGET key field:获取key对应的哈希表中field的值。
HDEL key field:删除key对应的哈希表中的field及其对应的值。
HINCRBY key field increment:将key对应的哈希表中field 的值加上increment。
3.列表操作LPUSH key value:将value插入到key对应的列表的头部。
RPUSH key value:将value插入到key对应的列表的尾部。
LPOP key:从key对应的列表的头部弹出一个元素。
RPOP key:从key对应的列表的尾部弹出一个元素。
LLEN key:获取key对应的列表的长度。
4.集合操作SADD key member:将member加入到key对应的集合中。
SREM key member:将member从key对应的集合中删除。
SMEMBERS key:获取key对应的集合中所有的成员。
Redis操作命令⼤全(NodeJS版)/*——————————————————————————————* 本⽂案例基于以下运⾏环境:* 系统: CentOS 5.x* NodeJS版本: 0.9 以上* Redis版本: 2.8* Redis-nodejs 扩展: 0.12.1/*——————————————————————————————Part 1: 安装扩展使⽤以下命令:npm -g install redisRedis实例:Host: 127.0.0.1 Port: 6379Part 2: 实例var redis = require("redis"),client = redis.createClient(6379,"127.0.0.1");(function(err,response){console.log(err,response);});//如果这个查询没有错误,err的值是null创建REDIS连接以下代码展⽰创建⼀个redis socket连接,并且查询redis服务器信息,也就是 redis-cli INFO 命令var redis = require("redis");var client = redis.createClient(6379,'127.0.0.1');(function(err,response){console.log(err,response);});上⾯代码延伸出的⼀些问题:1. 如果服务器没有连接上,会怎样?2. 如果连接超时,怎么处理?对于以上问题,我们需要对代码进⾏⼀些修改,以便更好地进⾏错误处理,这将是⼀个好的变成习惯. createClient(port,host,options)这个函数接受三个参数,第⼀个是连接端⼝,第⼆个是主机IP/名称,第三个参数则是配置项,KEY=>VALUE形式例如:var client = redis.createClient(63719,'127.0.0.1',{connect_timeout:1}); //增加超时选项错误处理:Nodejs 错误处理机制有2种,1种是同步操作时可以使⽤ try ... catch ..来捕获错误,另外⼀种就是事件了, redisClient 有⼀个error 的事件,当出错的时候变回emmit 这个事件,使⽤⽅法:client.on('error',function(error){console.log(error);});Setclient.set(key,value,callback),callback 函数有2个回调参数,error和response, error表⽰操作过程中的错误提⽰值为null表⽰没有错误,response为布尔值client.set("Roban","lee",function(err,response){console.log(err,response);});Getclient.get(key,callback),callback 函数有2个回调参数,error和response, error表⽰操作过程中的错误提⽰值为null表⽰没有错误,response为获取到的值,null表⽰没有获取到数据client.get("Roban",function(err,response){console.log(err,response); //will print lee});Hsetclient.hset(hashkey,field,value,callback) 哈希数据类型, 第⼀个参数为KEY名称,第⼆个为需要设置的字段KEY,第三个为值,第四个参数为回调参数,内容和set⼀致client.hset("roban:demo:hset","today","fine",function(err,response){console.log(err,response);});Hmsetclient.hmset(hashkey,field,value,field,value ….. callback) 哈希数据类型, 第⼀个参数为KEY名称,后⾯的参数为不固定参数,数据格式是key,value ,key, valueclient.hset("roban:demo:hset","lastday","notgood","nextday","willbefine",function(err,response){console.log(err,response);});Hgetclient.hget(hashkey,field,callback) 获取hash数据中的某⼀个字段值client.hset("roban:demo:hset","today",function(err,response){console.log(err,response);});Hgetallclient.hgetall(hashkey,callback) 获取hash数据种所有的数据,包括字段与值client.hset("roban:demo:hset",function(err,response){console.log(err,response);});BLpop阻塞式弹出队列数据,从数据顶部(左侧)弹出,当 BLPOP 被调⽤时,如果给定 key 内⾄少有⼀个⾮空列表,那么弹出遇到的第⼀个⾮空列表的头元素,并和被弹出元素所属的列表的名字⼀起,组成结果返回给调⽤者。
Redis中exists、ttl、setex、setnx、set、getset等常⽤命令1、exists通常情况下⽤exists来判断⼀个key是否存在没什么问题。
但如果过期时间需要精确到秒或⼗秒级,那么exists就可能错误返回。
原因是在redis Key过期之后,但是执⾏exists命令的返回值可能还为true,这个时候使⽤TTL命令发现返回值已经⼩于等于0了。
ps :redis key 过期的⽅式有三种:被动删除:当读/写⼀个已经过期的key时,会触发惰性删除策略(执⾏exists不会触发惰性删除),直接删除掉这个过期key 主动删除:由于惰性删除策略⽆法保证冷数据被及时删掉,所以Redis会定期主动淘汰⼀批已过期的key当前已⽤内存超过maxmemory限定时,触发主动清理策略2、ttl使⽤TTL key可以访问key的⽣存时间。
时间复杂度:O(1)返回值:当 key 不存在时,返回 -2 。
当 key 存在但没有设置剩余⽣存时间时,返回 -1 。
否则,以秒为单位,返回 key 的剩余⽣存时间。
3、setset key value设置指定 key 的值为 value。
如果 key 已经存储其他值, SET 就覆写旧值,且⽆视类型。
4、setexsetex key seconds value设置指定 key 的值为 value,并将 key 的过期时间设为 seconds (以秒为单位)。
如果 key 已经存在, SETEX 命令将会替换旧的值。
5、setnxsetnx key value 设置指定 key 的值为 value,只有在 key 不存在时设置 key 的值。
setnx(SET if Not eXists)命令在指定的 key 不存在时,为 key 设置指定的值。
设置成功,返回 1 。
设置失败,返回 0 。
6、getsetgetset key value设置指定 key 的值为 value,并返回 key 的旧值(old value)。
redis基本操作Redis是一种开源的内存型数据库,它的性能优异,特性非常强大,能够支持大量的数据结构,如字符串、哈希表、列表、集合和有序集合等。
它也被称为NoSQL(非关系型)数据库,因为它不需要严格的模式化结构。
Redis最常用于缓存,因为它可以支持大量的键值对,以及速度令人惊叹的存取速度。
Redis安装非常简单,用户可以选择在其官网下载最新版本,也可以从大多数Linux发行版的软件仓库安装Redis,比如Arch Linux 中的AUR和Ubuntu中的PPA。
安装完毕后,用户就可以进行Redis的基本操作了。
首先,需要打开一个Redis服务器的连接,可以使用redis-cli 工具,或利用任何一种Redis库管理器,比如phpredisadmin,redis desktop manager等。
当连接上Redis服务器之后,就可以开始使用基本操作了。
SET命令可以让用户在Redis中设置一个键值对。
它由以下语法组成:SET key value。
这里,key是设置的键,value是对应的值。
例如:SET user johnsmith,则设置user为johnsmith。
GET命令可以用来获取Redis中的数据。
它的使用方法也很简单,只要输入GET key,就可以获取到key对应的值。
比如:GET user,输出johnsmith。
EXPIRE命令可以设置一个key的过期时间。
这样可以让用户控制key的有效期,以免它过期又无法使用。
其语法为EXPIRE keyseconds,其中seconds为设置的过期时间,即以秒为单位,设置key 要在多少秒之内变成过期状态。
EXISTS命令可以检查一个key是否存在,返回值是0或1,即key不存在或key存在。
其语法为EXISTS key,比如:EXISTS user,如果user已存在,则返回1,否则返回0。
RENAME命令可以对已存在的key进行重命名。
Redis是一个开源的内存数据库系统,它支持多种数据结构,包括字符串、哈希表、列表、集合等。
以下是一些Redis中常用的查询指令:1.字符串操作:–SET key value:设置指定键的值。
–GET key:获取指定键的值。
–DEL key:删除指定键。
示例:2.哈希表操作:–HSET key field value:在哈希表中设置字段的值。
–HGET key field:获取哈希表中指定字段的值。
–HGETALL key:获取哈希表中所有字段和值。
示例:3.列表操作:–LPUSH key value:将一个值插入到列表头部。
–RPUSH key value:将一个值插入到列表尾部。
–LRANGE key start stop:获取列表指定范围内的元素。
示例:4.集合操作:–SADD key member:向集合中添加一个成员。
–SMEMBERS key:获取集合中的所有成员。
–SISMEMBER key member:检查一个成员是否是集合的成员。
示例:5.有序集合操作:–ZADD key score member:向有序集合中添加一个成员,并指定分数。
–ZRANGE key start stop [WITHSCORES]:按分数范围获取有序集合的成员。
–ZSCORE key member:获取有序集合中成员的分数。
示例:6.键操作:–EXISTS key:检查键是否存在。
–DEL key:删除指定键。
–TTL key:获取键的剩余过期时间(以秒为单位)。
示例:这些是Redis中的一些基本操作,可以根据实际需求和数据模型选择合适的命令。
请注意,Redis还有许多其他命令和高级功能,具体使用取决于的应用场景。
redis命令大全Redis命令大全。
Redis是一个开源的内存数据库,它可以用作数据库、缓存和消息中间件。
它支持多种数据结构,如字符串、哈希表、列表、集合、有序集合等,同时还提供了丰富的命令集来操作这些数据结构。
本文将为大家介绍一些常用的Redis命令,希望能够帮助大家更好地理解和使用Redis。
1. 字符串操作。
SET key value,设置指定 key 的值。
GET key,获取指定 key 的值。
DEL key,删除指定 key。
2. 哈希表操作。
HSET key field value,设置指定 key 的哈希表中指定字段的值。
HGET key field,获取指定 key 的哈希表中指定字段的值。
HDEL key field,删除指定 key 的哈希表中指定字段。
3. 列表操作。
LPUSH key value,将一个或多个值插入到列表头部。
RPUSH key value,将一个或多个值插入到列表尾部。
LPOP key,移除并返回列表头部的元素。
RPOP key,移除并返回列表尾部的元素。
4. 集合操作。
SADD key member,向集合添加一个或多个成员。
SMEMBERS key,返回集合中的所有成员。
SREM key member,移除集合中的一个或多个成员。
5. 有序集合操作。
ZADD key score member,向有序集合添加一个或多个成员,或更新已存在成员的分数。
ZRANGE key start stop [WITHSCORES],通过索引区间返回有序集合成指定区间内的成员。
ZREM key member,移除有序集合中的一个或多个成员。
6. 其他常用命令。
EXISTS key,检查给定 key 是否存在。
EXPIRE key seconds,设置 key 的过期时间。
TTL key,获取 key 的剩余过期时间。
以上是一些常用的Redis命令,当然,Redis还有很多其他命令可以用来操作不同类型的数据结构,如发布订阅、事务、管道等。
redis list操作命令Redis是一个高性能的键值数据库,由于它的高速读写能力和多种数据结构支持,成为大部分业务场景中的首选。
Redis中的列表(List)是一种有序的数据结构,可以用来保存一组有序的元素。
本文将详细介绍Redis中List的操作命令。
1. LPUSH:从列表左侧插入元素LPUSH命令可以从列表左侧插入一个或多个元素,语法如下:LPUSH key value [value ...]例如,将值为“a”、“b”和“c”依次插入名为“list1”的列表中:LPUSH list1 a b c2. RPUSH:从列表右侧插入元素RPUSH命令可以从列表右侧插入一个或多个元素,语法与LPUSH类似,只不过是从右侧插入,例如:RPUSH list1 x y z3. LLEN:获取列表长度LLEN命令可以获取列表中元素的数量,语法如下:LLEN key例如,获取“list1”列表的长度:LLEN list14. LINDEX:获取列表中指定位置的元素LINDEX命令可以获取列表中指定位置的元素,语法如下:LINDEX key index其中,index从0开始计数,如果index为正数,表示从左侧开始第index个元素,如果为负数,表示从右侧开始第|index|+1个元素。
例如,获取“list1”列表中的第3个元素:LINDEX list1 25. LPOP:弹出左侧元素LPOP命令可以弹出列表的左侧元素,即将列表中的第一个元素移除并返回该元素的值,语法如下:LPOP key例如,弹出“list1”列表的第一个元素:LPOP list16. RPOP:弹出右侧元素RPOP命令可以弹出列表的右侧元素,即将列表中的最后一个元素移除并返回该元素的值,语法如下:RPOP key例如,弹出“list1”列表的最后一个元素:RPOP list17. LINSERT:在列表中指定位置插入元素LINSERT命令可以在列表中指定位置插入一个元素,语法如下:LINSERT key BEFORE|AFTER pivot value其中,pivot为目标元素,BEFORE表示在目标元素前插入,AFTER表示在目标元素后插入。
表3-1 Redis中的自增命令和自减命令
表3-2 供Redis处理子串和二进制位的命令
表3-3 一些常用的列表命令
表3-4 阻塞式的列表弹出命令以及在列表之间移动元素的命令
表3-5 一些常用的集合命令
表3-6 用于组合和处理多个集合的Redis命令
表3-7 用于添加和删除键值对的散列操作
表3-8 展示Redis散列的更高级特性
表3-9 一些常用的有序集合命令
表3-10 有序集合的范围型数据获取命令和范围型数据删除命令,以及并集命令和交集命令
表3-11 Redis提供的发布与订阅命令
表3-12 SORT命令的定义
表3-13 用于处理过期时间的Redis命令。
redis数据库基本操作Redis 是一个开源的、高性能的键值存储系统,被广泛应用于分布式缓存、消息队列、排行榜、实时数据处理等领域。
它支持多种数据结构,包括字符串、哈希、列表、集合、有序集合等,提供了丰富的操作命令,可以满足不同业务场景下的需求。
本文介绍 Redis 的基本操作,包括连接数据库、键值操作、事务操作、发布订阅、持久化、复制和集群等方面。
一、连接数据库Redis 通过 TCP 协议进行通信,客户端可以通过Redis 命令行界面或者编程语言接口访问 Redis 数据库。
以下是使用命令行界面连接 Redis 的步骤:1. 安装 RedisUbuntu 下可以使用下面的命令安装 Redis:sudo apt-get update sudo apt-get install redis-server2. 启动 Redis启动 Redis 服务后,可以在命令行中输入 redis-cli 命令连接 Redis,在默认情况下 Redis 的主机地址为127.0.0.1,端口为 6379。
redis-cli如果 Redis 服务运行在其他主机或者端口上,可以使用以下命令连接 Redis:redis-cli -h <host> -p <port>3. 关闭 Redis可以通过 shutdown 命令关闭 Redis 服务:shutdown二、键值操作Redis 中的键值操作类似于字典,它可以通过键获取值,也可以通过键删除值。
以下是常用的键值操作命令:1. SET/GETSET 命令用于设置键值对,GET 命令用于获取键对应的值。
SET key value GET key例如:SET name "John" GET name2. DELDEL 命令用于删除指定的键值对。
DEL key例如:DEL name三、事务操作Redis 支持事务操作,可以将多个命令放在一起执行,保证原子性。
python redis基本操作Python Redis基本操作Redis是一个开源的内存数据存储系统,它主要用于缓存、会话管理和消息队列等场景。
在Python中,我们可以通过使用redis-py 库来与Redis进行交互,实现对数据的读写操作。
本文将介绍Redis的基本操作,包括连接Redis、字符串操作、列表操作、哈希操作、集合操作和有序集合操作。
1. 连接Redis我们需要安装redis-py库。
可以使用pip命令来安装:```pip install redis```在Python中,连接Redis非常简单,只需引入redis模块,创建一个Redis对象即可:```pythonimport redis# 连接Redisr = redis.Redis(host='localhost', port=6379, db=0)```其中,host参数为Redis服务器的地址,port参数为Redis服务器的端口号,db参数为Redis数据库的编号。
2. 字符串操作Redis中的字符串是最简单的数据类型,可以用来存储任意字符串。
redis-py库提供了一系列的操作方法,如设置字符串值、获取字符串值、删除字符串等。
设置字符串值:```pythonr.set('name', 'Alice')```获取字符串值:```pythonname = r.get('name')print(name)```删除字符串:```pythonr.delete('name')```3. 列表操作Redis的列表是一个有序的字符串列表,可以用来存储多个值。
redis-py库提供了一系列的操作方法,如向列表中添加值、获取列表中的值、删除列表等。
向列表中添加值:```pythonr.lpush('fruits', 'apple')r.lpush('fruits', 'banana')r.lpush('fruits', 'orange')```获取列表中的值:```pythonfruits = r.lrange('fruits', 0, -1)print(fruits)```删除列表:```pythonr.delete('fruits')```4. 哈希操作Redis的哈希是一个键值对集合,可以用来存储对象。
REDIS常用命令操作准备在本地下载并安装redis客户端后,在windows命令行窗口通过cd命令进入bin目录,运行redis-cli.exe 进入命令行操作界面,如下图所示:常用命令Key(键)DEL业务场景:删除不需要使用的一个或多个KEY不存在的KEY会被忽略参数说明:DEL key [key…..]这个key就是要删除的键,如果要删除多个key,则多个key之间以空格分隔返回值:被删除key的数量使用示例:EXISTS业务场景:验证是否存在某个key参数说明:Exists keykey代表要判断的键返回值:如果key存在,则返回1,不存在则返回0使用示例:KEYS业务场景:查找当前redis数据库中有哪些key参数说明:Keys pattern其中pattern为正则表达式,其正则语法完全同原生的正则语法一样比如:Keys * 匹配数据库中所有keyKeys h?llo 匹配hello、hallo、hxllo等,?代表任意一个字符 Keys h*llo 匹配hllo、heeeeeello等Keys h[ae]llo 仅匹配hello和hallo返回值:符合给定模式的key列表使用示例:String(字符串)DECR业务场景:将key中所存储的数字值减1如果key不存在,那么key的值会先初始化为0,然后再执行DECR操作如果值包含错误的类型或者字符串类型的值不能表示为数字,那么返回一个错误本操作的值限制在64位(bit)有符号数字表示之内参数说明:DECR keykey为操作的键返回值:减一后的值使用示例:DECRBY将key中所存储的数字值减去指定的值如果key不存在,那么key的值会先初始化为0,然后再执行DECR操作如果值包含错误的类型或者字符串类型的值不能表示为数字,那么返回一个错误本操作的值限制在64位(bit)有符号数字表示之内参数说明:DECR key decrementkey为操作的键decrement为减量返回值:操作后的值使用示例:GET业务场景:返回key所关联的字符串值如果key不存在,则返回nil如果key存储的值不是字符串类型,返回异常参数说明:Get keykey为操作的键key存在 key对应的值key不存在 nilkey存储的值类型不对返回错误使用示例:INCR业务场景:将key中所存储的数字值加1如果key不存在,那么key的值会先初始化为0,然后再执行INCR操作如果值包含错误的类型或者字符串类型的值不能表示为数字,那么返回一个错误本操作的值限制在64位(bit)有符号数字表示之内参数说明:INCR keykey为操作的键返回值:加一后的值使用示例:INCRBY业务场景:将key中所存储的数字值加指定增量如果key不存在,那么key的值会先初始化为0,然后再执行INCR操作如果值包含错误的类型或者字符串类型的值不能表示为数字,那么返回一个错误本操作的值限制在64位(bit)有符号数字表示之内参数说明:INCR key incrementkey为操作的键increment 增量返回值:操作后的值使用示例:SET业务场景:将指定字符串值设置到指定的key中存储如果指定的key中已经有其它类型的值或同类型不通值,则默认覆盖参数说明:Set key value [EX seconds] [PX milliseconds] [NX|XX]Key 存储值得键Value 要存储的值上面方括号中的参数从redis版本2.6.12开始才支持:EX seconds 设置键的过期时间为second秒PX milliseconds 设置键的过期时间为millisecond毫秒NX 只有在键不存在时,才对键进行设置操作XX 只有在键存在时,才对键进行操作返回值:redis2.6.12版本以前返回OKredis2.6.12版本以后设置操作成功完成时才返回OK 使用示例:STRLEN业务场景:返回key所存储的字符串值得长度当key存储的不是字符串值时,返回一个错误参数说明:Strlen keyKey 操作的键返回值:key存在 key中字符串的长度key不存在 0key存储的不是字符串值异常信息使用示例:Hash(哈希表)相当于key中保存的一个map,其域相当于map中的key,域的值相当于map中的value HDEL业务场景:删除哈希表key中的一个或多个指定域值,不存在的将被忽略执行参数说明:HDEL key filed [field….]Key 存储hash表的keyField 要删除的域值,多个field用空格分隔,如果要删除多个需要redis版本在2.4以上返回值:被成功移除的数量,不包括被忽略的域值使用示例:HEXISTS业务场景:查看哈希表key中,给定域field是否存在参数说明:Hexists key fieldKey 保存哈希表的键Field 存储对应值得域,相当于map中的key 返回值:存在域返回1不存在域或key不存在返回0使用示例:HGET业务场景:返回hash表key中给定域的值参数说明:Hget key fieldKey 保存哈希表的键Field 存储对应值得域,相当于map中的key 返回值:给定域的值给定域不存在或者给定key不存在时,返回nil 使用示例:HKEYS业务场景:返回哈希表中的所有域,相当于返回map中的所有key 参数说明:HKEYS keyKey 保存哈希表的键返回值:包含哈希表中所有域的集合如果key不存在,则返回空集合使用示例:HLEN业务场景:返回哈希表中key中域的数量参数说明:HLEN keyKey 保存哈希表的键返回值:哈希表中域的数量如果key不存在,则返回0使用示例:HSETNX业务场景:当且仅当域存在时,将哈希表key中的域的值设置为指定值如果域已存在时,该操作无效如果key不存在时,一个新哈希表被创建并执行HSETNX命令参数说明:HSETNX key field valueKey 保存哈希表的键Field 要设置的域Value 要设置的值返回值:设置成功,返回1给定域已经存在且没有操作被执行,返回0使用示例:List(列表)类似于JAVA中的List集合,保存元素有序可重复LLEN业务场景:返回列表的长度如果列表不存在,则key被解释为一个空列表,返回0 如果key不是列表,则返回一个错误参数说明:LLEN keyKey保存集合的键返回值:key存在列表key的长度key不存在 0key类型错误异常信息使用示例:LPUSH业务场景:将一个或多个值插入到列表key的表头如果有多个值,那么各个值按从左到右的顺序依次插入到表头,比如说:对空列表mylist执行LPUSH mylist a b c列表的值则是c-b-a如果列表key不存在,则创建一个以此命令的新列表并执行LPUSH操作如果key存在但不是列表类型,则直接返回错误信息参数说明:LPUSH key value [value1 value2 value3 …….]Key 列表Value 要插入的值(如果有多个,就像方括号中那样写value1 value2 value3…..)返回值:执行LPUSH后列表key的长度使用示例:LPOP业务场景:移除并返回列表key的头元素参数说明:LPOP keyKey 操作的列表返回值:列表的头元素列表不存在时,返回nil使用示例:LPUSHX业务场景:当且仅当列表key存在,将值value插入到列表key的表头它和LPUSH刚好相反参数说明:LPUSHX key valueKey 列表Value 要插入的值返回值:LPUSHX执行过后,列表的长度使用示例:RPOP业务场景:移除并返回列表key的尾元素参数说明:RPOP keyKey 操作的列表返回值:列表的尾元素列表不存在时,返回nil使用示例:RPUSH业务场景:将一个或多个值插入到列表key的表尾(最右边或者说最下边)如果有多个值,那么各个值按从左到右的顺序依次插入到表尾,比如说:对空列表mylist执行LPUSH mylist a b c列表的值则是c-b-a如果列表key不存在,则创建一个以此命令的新列表并执行LPUSH操作如果key存在但不是列表类型,则直接返回错误信息参数说明:RPUSH key value [value1 value2 value3 …….]Key 列表Value 要插入的值(如果有多个,就像方括号中那样写value1 value2 value3…..)返回值:执行RPUSH后列表key的长度使用示例:RPUSHX业务场景:当且仅当列表key存在,将值value插入到列表key的表尾它和RPUSH刚好相反参数说明:RPUSHX key valueKey 列表Value 要插入的值返回值:RPUSHX执行过后,列表的长度使用示例:Set(集合)类似于JAVA中的Set,保存元素无序不可重复SADD业务场景:将一个或多个元素值添加到集合key中,已经存在集合key中的元素将忽略添加如果集合key不存在,则默认创建一个包含所要添加元素值得集合key如果key存在但是不是集合类型,则返回错误参数说明:SADD key member [member1 member2 member3……]Key 集合keyMember 要添加的元素值返回值:成功添加到集合key中的元素数量使用示例:SCARD业务场景:返回集合key中的基数(就是集合key中元素的数量)参数说明:SCARD keyKey 集合key返回值:集合中元素的数量key不存在时,返回0使用示例:SMEMBERS业务场景:返回集合key中的所有成员如果集合key不存在,则返回空信息参数说明:SMEMBERS keyKey 集合key返回值:集合key中的所有成员使用示例:SortedSet(有序集合)除了一点:这种集合保存的元素是有序的,其它同Set而这种有序是靠保存的score值为唯一标识ZADD业务场景:将一个或多个member元素及其score值添加到有序集合key中如果某个member元素已经是有序集合key的成员,那么更新这个member成员的score值并重新插入这个member元素,以保证该member在正确的位置上如果有序集合key不存在,则默认创建一个空的有序集合并执行ZADD操作如果key存在但不是有序集合,则返回错误信息需要说明的是:score值可以是整数值或双精度浮点数参数说明:ZADD key score member [[score1 member1] [score2 member2] [score3 member3]…..]Key 有序集合keyScore 标识member元素的位置Member 要保存的元素值返回值:被成功添加的新成员的数量,不包括那些被更新的、已经存在的成员使用示例:ZCARD业务场景:返回有序集合key中的元素数量(基数)参数说明:ZCARD keyKey 有序集合返回值:当key存在且是有序集合返回元素数量当key不存在时返回0使用示例:ZRANGE业务场景:返回有序集合中,指定区间的元素有序集合中元素的位置默认按score值递增排序具有相同score值得的元素内容按照字典(自然顺序,比如说a<b<c<d<e)排序指定区间用下标表示,下标默认从0开始计数,起始下标和截止下标超限不会引起错误该命令默认值返回元素,如果想要同时返回score,可以在命令后追加WITHSCORES选项,显示如下:value1,score1,value2,score2………参数说明:ZRANGE key start stop [WITHSCORES]Key 有序集合Start 起始下标(默认从0 开始)Stop 截止下标WITHSCORES 追加该参数后表示要同时显示score值返回值:指定区间内,可带score值或者不带score值的有序集合中成员的列表使用示例:ZREM业务场景:移除有序集合中的一个或多个成员,指定要删除的成员不存在的话就被忽略如果key存在但是不是有序集合,则返回错误信息参数说明:ZREM key member [member1 member2 member3 member3]Key 有序集合Member 要删除的成员返回值:成功被删除的成员数量,有序集合中不存在的成员忽略不计使用示例:Connection(连接)SELECT业务场景:当要指定使用redis 0-15号中的其中一个数据库而不使用默认数据库时,就需要通过该命令切换到指定数据库数据库索引号index用数字值指定,从0开始默认使用0号数据库参数说明:SELECT indexIndex 数据库索引号返回值:OK使用示例:Server(服务器)FLUSHDB业务场景:当业务需要清空数据库所有key时,则可以通过该命令实现。