redis指令文档

1连接控制

QUIT 关闭连接

AUTH (仅限启用时)简单的密码验证

2适合全体类型的命令

EXISTS key  判断一个键是否存在,存在返回1,否则返回0。

DEL key  删除某个key,或是一系列key;DEL key1 key2 key3 key4。

TYPE key  返回某个key元素的数据类型(none:不存在,string:字符,list,set,zset,hash)。

KEYS pattern  返回匹配的key列表(KEYS foo*:查找foo开头的keys)。

RANDOMKEY  随机获得一个已经存在的key,如果当前数据库为空,则返回空字符串。

RENAME oldname newname  更改key的名字,新键如果存在将被覆盖。

RENAMENX oldname newname 更改key的名字,如果名字存在则更改失败。

DBSIZE  返回当前数据库的key的总数。

EXPIRE  设置某个key的过期时间(秒),(EXPIRE bruce 1000:设置bruce这个key1000秒后系统自动删除)注意:如果在还没有过期的时候,对值进行了改变,那么那个值会被清除。

TTL  查找某个key还有多长时间过期,返回时间秒。

SELECT index 选择数据库。

MOVE key dbindex 将指定键从当前数据库移到目标数据库dbindex。成功返回1;否则返回0(源数据库不存在key或目标数据库已存在同名key)。

FLUSHDB  清空当前数据库中的所有键。

FLUSHALL  清空所有数据库中的所有键。

3处理字符串的命令

SET key value  给一个键设置字符串值。SET keyname datalength data (SET bruce 10 paitoubing:保存key为burce,字符串长度为10的一个字符串paitoubing到数据库),data最大不可超过1G。

GET key  获取某个key 的value值。如key不存在,则返回字符串“nil”;如key的值不为字符串类型,则返回一个错误。

GETSET key value  可以理解成获得的key的值然后SET这个值,更加方便的操作 (SET bruce 10 paitoubing,这个时候需要修改bruce变成1234567890并获取这个以前的数据paitoubing,GETSET bruce 10 1234567890)。

MGET key1 key2 … keyN  一次性返回多个键的值。

SETNX key value  SETNX与SET的区别是SET可以创建与更新key的value,而SETNX是如果key不存在,则创建key与value数据。

MSET key1 value1 key2 value2 … keyN valueN  在一次原子操作下一次性设置多个键和值。

MSETNX key1 value1 key2 value2 … keyN valueN  在一次原子操作下一次性设置多个键和值(目标键不存在情况下,如果有一个以上的key已存在,则失败)。

INCR key 自增键值。

INCRBY key integer  令键值自增指定数值。

DECR key  自减键值。

DECRBY key integer 令键值自减指定数值。

4处理 lists 的命令

RPUSH key value  从 List 尾部添加一个元素(如序列不存在,则先创建,如已存在同名Key而非序列,则返回错误)。

LPUSH key value  从 List 头部添加一个元素。

LLEN key  返回一个 List 的长度。

LRANGE key start end  从自定的范围内返回序列的元素(LRANGE testlist 0 2;返回序列testlist前0 1 2元素)。

LTRIM key start end  修剪某个范围之外的数据 (LTRIM testlist 0 2;保留0 1 2元素,其余的删除)。

LINDEX key index  返回某个位置的序列值(LINDEX testlist 0;返回序列testlist位置为0的元素)。

LSET key index value  更新某个位置元素的值。

LREM key count value  从 List 的头部(count正数)或尾部(count负数)删除一定数量(count)匹配value的元素,返回删除的元素数量。

LPOP key  弹出 List 的第一个元素。

RPOP key  弹出 List 的最后一个元素。

RPOPLPUSH srckey dstkey  弹出 _srckey_ 中最后一个元素并将其压入 _dstkey_头部,key不存在或序列为空则返回“nil”。

5处理集合(sets)的命令(有索引无序序列)

SADD key member  增加元素到SETS序列,如果元素(member)不存在则添加成功1,否则失败0。

SREM key member  删除SETS序列的某个元素,如果元素不存在则失败0,否则成功1。

SPOP key  从集合中随机弹出一个成员。

SMOVE srckey dstkey member  把一个SETS序列的某个元素移动到另外一个SETS序列 。

SCARD key  统计某个SETS的序列的元素数量。

SISMEMBER key member  获知指定成员是否存在于集合中。

SINTER key1 key2 … keyN  返回 key1, key2, …, keyN 中的交集。

SINTERSTORE dstkey key1 key2 … keyN  将key1, key2, …, keyN 中的交集存入dstkey。

SUNION key1 key2 … keyN  返回key1, key2, …, keyN的并集。

SUNIONSTORE dstkey key1 key2 … keyN  将key1, key2, …, keyN的并集存入dstkey。

SDIFF key1 key2 … keyN  依据key2, …, keyN求key1的差集。官方例子:

key1 = x,a,b,c

key2 = c

key3 = a,d

SDIFF key1,key2,key3 => x,b

SDIFFSTORE dstkey key1 key2 … keyN  依据key2, …, keyN求key1的差集并存入dstkey。

SMEMBERS key  返回某个序列的所有元素。

SRANDMEMBER key  随机返回某个序列的元素。

6处理有序集合(sorted sets)的命令 (zsets)

ZADD key score member  添加指定成员到有序集合中,如果目标存在则更新score(分值,排序用)。

ZREM key member  从有序集合删除指定成员。

ZINCRBY key increment member  如果成员存在则将其增加_increment_,否则将设置一个score为_increment_的成员。

ZRANGE key start end  返回升序排序后的指定范围的成员。

ZREVRANGE key start end  返回降序排序后的指定范围的成员。

ZRANGEBYSCORE key min max  返回所有符合score >= min和score <= max的成员。ZCARD key  返回有序集合的元素数量 ZSCORE key element 返回指定成员的SCORE值。ZREMRANGEBYSCORE key min max  删除符合 score >= min 和 score <= max 条件的所有成员。

7排序(List, Set, Sorted Set)

SORT key BY pattern LIMIT start end GET pattern ASC|DESC ALPHA  按照指定模式排序集合或List。

SORT mylist

默认升序 ASC

SORT mylist DESC

SORT mylist LIMIT 0 10

从序号0开始,取10条

SORT mylist LIMIT 0 10 ALPHA DESC

按首字符排序

SORT mylist BY weight_*

SORT mylist BY weight_* GET object_*

SORT mylist BY weight_* GET object_* GET #

SORT mylist BY weight_* STORE resultkey

将返回的结果存放于resultkey序列(List)

8持久控制

SAVE  同步保存数据到磁盘。

BGSAVE  异步保存数据到磁盘。

LASTSAVE  返回上次成功保存到磁盘的Unix时间戳。

SHUTDOWN  同步保存到服务器并关闭 Redis 服务器(SAVE+QUIT)。

BGREWRITEAOF  当日志文件过长时重写日志文件。

9远程控制命令

INFO  提供服务器的信息和统计信息。

MONITOR  实时输出所有收到的请求。

SLAVEOF  修改复制选项。

10Redis目前提供四种数据类型:string,list,set及zset(sorted set)。

* string是最简单的类型,你可以理解成与Memcached一模一个的类型,一个key对应一个value,其上支持的操作与Memcached的操 作类似。但它的功能更丰富。

* list是一个链表结构,主要功能是push、pop、获取一个范围的所有值等等。操作中key理解为链表的名字。

* set是集合,和我们数学中的集合概念相似,对集合的操作有添加删除元素,有对多个集合求交并差等操作。操作中key理解为集合的名字。

* zset是set的一个升级版本,他在set的基础上增加了一个顺序属性,这一属性在添加修改元素的时候可以指定,每次指定后,zset会自动重新按新的 值调整顺序。可以理解了有两列的mysql表,一列存value,一列存顺序。操作中key理解为zset的名字。

11协议

Redis目前只有基于TCP的文本协议,与memcache类似,有一些改进。

客户端通常发送

命令 参数… 值字节数\r\n

值\r\n

服务端的返回,根据第一个字节,可以判断:

- 错误信息

+ 普通文本信息

$ 变长字节数,$6表示CRLF之后有6个字节的字符

: 返回一个整数

* 返回组数,即*6表示CRLF之后将返回6组变长字符

12注意事项:

Key不可包含空格或者回车符

Key不要过长或过短,应使其有意义,如”comment:1234:reply.to”

原文地址:https://www.cnblogs.com/xyhero/p/96f00ecc8019ddbbb809479ed80eb40b.html

时间: 2024-07-31 17:33:18

redis指令文档的相关文章

Redis使用文档一

1 Redis概述 1.1前言 Redis是一个开源.支持网络.基于内存亦可持久化的日志型.键值对存储数据库.使用ANSI C编写.并提供多种语言的API. 其开发由VMware主持,是最流行的键值对存储数据库之中的一个. Redis的一大特点就是速度异常快.官方发布的性能測试结果显示,每秒钟能够达到10万次的操作. 1.2安装和验证 在Redis的官网上.我们能够方便地下载Redis的各种版本号,其官网下载地址为:http://redis.io/download. 我们下载了redis的稳定版

Redis相关指令文档

连接控制 QUIT 关闭连接 AUTH (仅限启用时)简单的密码验证 适合全体类型的命令 EXISTS key 判断一个键是否存在;存在返回 1;否则返回0; DEL key 删除某个key,或是一系列key;DEL key1 key2 key3 key4 TYPE key 返回某个key元素的数据类型 ( none:不存在,string:字符,list,set,zset,hash) KEYS pattern 返回匹配的key列表 (KEYS foo*:查找foo开头的keys) RANDOMK

Redis安装文档

  一.安装redis 先获取redis源码包 wget http://download.redis.io/redis-stable.tar.gz tar zxvf redis-stable.tar.gz cd redis-stable make make install 最好再编译后直接执行make install命令来将这些可执行程序复制到/user/local/bin目录中以便以后执行程序时可以不用输入完整的路径 make的时候注意: 如果make的时候提示如下错误: cc: error:

redis配置文档细节问题

在window10环境下,redis的.conf配置文件在使用时,不可以有多余的空白符.比如为了对其在配置的前方添加两个空格. 这么做会导致redis-server使用这个配置文件的时候无法正常启动,错误信息:Invalid argument during startup: unknown conf file parameter 错误信息截图 原文地址:https://www.cnblogs.com/red-scard/p/11356344.html

redis module 学习—官网文档整理

前言 redis在4.0版本中,推出了一个非常吸引的特性,可以通过编写插件的模式,来动态扩展redis的能力.在4.0之前,如果用户想拥有一个带TTL的INCRBY 命令,那么用户只能自己去改代码,重新编译了.在4.0版本推出之后,想实现一个自定义的命令就简单的多了. 在这个功能发布之后,已经有许多的第三方扩展插件被开发出来.具体可以参见官方模块仓库 : 接下来,本文将基于redis官方文档 进行翻译,介绍下相关的功能(翻译的和原有有出入,更多是基于自己的理解.如果大家有问题,欢迎讨论),也算对

redis.conf 配置文档详解

redis 配置文档详解. 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411

luojun666文档集

欢迎访问软件下载乐园 @web 1,nginx 下载    文档  |  安装  |  常见优化  |  安全  |  lnmp  | 2,tomcat 下载    文档 3,apache 下载 4,varnish 下载    文档 @数据库 1,mysql 下载    文档  |  主从同步  |  读写分离 2,mariadb 下载    文档1  |  文档2  |  主从同步| 读写分离 3,redis 下载    文档 4,mongodb 下载 5,oracle 下载 6,sqlser

Linux 指令篇:文档编辑--col

功能说明:过滤控制字符. 语 法:col [-bfx][-l<缓冲区列数>] 补充说明:在许多UNIX说明文件里,都有RLF控制字符.当我们运用shell特殊字符">"和">>",把说明文件的内容输出成纯文本文件时,控制字符会变成乱码,col指令则能有效滤除这些控制字符. 参 数:  -b   过滤掉所有的控制字符,包括RLF和HRLF.  -f   滤除RLF字符,但允许将HRLF字符呈现出来.  -x   以多个空格字符来表示跳格字

Linux下查看文档指令

1,cat直接查看 cat /etc/profile 2,more,less分页查看 less  /etc/profile more /etc/profile less -N /etc/profile 显示行号 内容 3,tail head从尾部或头部查看 head -n 10 /etc/profile  显示前10行内容 tail -n 10 /stc/profile   显示后10行的内容 tail /etc/profile 显示后10行内容,如果文档增加内容,默认显示,此指令显示日志非常好