redis常用命令整理

来源:脚本之家  责任编辑:小易  

使用Redis客户端连接Redis,保证可以执行Redis命令,可以用RedisDesktopManager,当然也可使用Xshell。执行infomemory查询Redis内存使用情况信息。

一、key 相关:

我们在启动的时候,(使用 ./redis-serve)之后不要进行任何操作. 另外再开启一个页面 在src目录下 运行命令 ./redis-cli 就可以进行操作了.

(1)redis允许模糊查询 key(keys *)  有3个通配符 *、?、[]

我的目录是/home/lyg/redisFiles 2. 进入目录,解压tar –zxvf redis-3.2.8.tar.gz 3. 安装redis:make 4. 进去目录下的src:make install 5.下面是redis常用的命令: 1. 查看redis进程:ps -e

(2)randomkey:返回随机key  

你这个环境安装必要的工具那是系统必须的呀, 网上有这样的命令,安装所需要的工具包,这个我就不给你找了,因为我觉得你应该学习一下。安的过程不重要,重要的是你要知道安

(3)type key:返回key存储的类型

1、Redis Get 命令用于获取指定 key 的值。如果 key 不存在,返回 nil 。如果key 储存的值不是字符串类型,返回一个错误。 2、语法 redis Get 命令基本语法如下: redis 127.0.0.1

(4)exists key:判断某个key是否存在

语法 redis Pgmerge 命令基本语法如下: redis 127.0.0.1:6379> PFMERGE destkey sourcekey [sourcekey ] 可用版本 >= 2.8.9 返回值 返回 OK。 实例 redis 127.0.0.1:637

(5)del key:删除key

这个不存在命令吧? 首先你要明白在linux下载如何注册服务,用redis-cli启动的redis服务说白了就像在windows下点击start.bat启动tomcat是一样意思,它并不是一个服务。我感觉

FLUSHALL: 删除所有key(慎用)

二、数据操作:

Redis支持五种数据类型:string(字符串),hash(哈希),list(列表),set(集合)及 zset(sorted set:有序集合)。

1、string(字符串)

一个key对应一个value。一个键最大能存储512MB。string类型是二进制安全的。

(1)set key value [ex 秒数] [px 毫秒数] [nx/xx]  

如果ex和px同时写,则以后面的有效期为准

nx:如果key不存在则建立

xx:如果key存在则修改其值

(2)get key:取值

(3)mset key1 value1 key2 value2 一次设置多个值

(4)mget key1 key2 :一次获取多个值

(5)setrange key offset value:把字符串的offset偏移字节改成value

如果偏移量 > 字符串长度,该字符自动补0x00

(6)append key value :把value追加到key 的原值上

(7)getrange key start stop:获取字符串中[start, stop]范围的值

对于字符串的下标,左数从0开始,右数从-1开始

注意:

当start>length,则返回空字符串

当stop>=length,则截取至字符串尾

如果start所处位置在stop右边,则返回空字符串

(8)getset key nrevalue:获取并返回旧值,在设置新值

2、hash(哈希) 

Redis hash 是一个 string 类型的 field 和 value 的映射表,hash 特别适合用于存储对象。每个 hash 可以存储 232 - 1 键值对(40多亿)。

(1)hset myhash field value:设置myhash的field为value

(2)hsetnx myhash field value:不存在的情况下设置myhash的field为value

(3)hmset myhash field1 value1 field2 value2:同时设置多个field

(4)hget myhash field:获取指定的hash field

(5)hmget myhash field1 field2:一次获取多个field

(6)hincrby myhash field 5:指定的hash field加上给定的值

(7)hexists myhash field:测试指定的field是否存在

(8)hlen myhash:返回hash的field数量

(9)hdel myhash field:删除指定的field

(10)hkeys myhash:返回hash所有的field

(11)hvals myhash:返回hash所有的value

(12)hgetall myhash:获取某个hash中全部的field及value

3、list(列表)

Redis 列表是简单的字符串列表,按照插入顺序排序。你可以添加一个元素到列表的头部(左边)或者尾部(右边)。列表最多可存储 232 - 1 元素 (4294967295, 每个列表可存储40多亿)。

(1)lpush key value:把值插入到链表头部

(2)rpush key value:把值插入到链表尾部

(3)lpop key :返回并删除链表头部元素

(4)rpop key: 返回并删除链表尾部元素

(5)lrange key start stop:返回链表中[start, stop]中的元素

(6)lrem key count value:从链表中删除value值,删除count的绝对值个value后结束

count > 0 从表头删除  

count < 0 从表尾删除  

count=0 全部删除

(7)ltrim key start stop:剪切key对应的链接,切[start, stop]一段并把改制重新赋给key

(8)lindex key index:返回index索引上的值

4、set(集合)

Redis的Set是string类型的无序集合。值不重复。

(1)sadd key value1 value2:往集合里面添加元素

(2)smembers key:获取集合所有的元素

(3)srem key value:删除集合某个元素

(4)spop key:返回并删除集合中1个随机元素(可以坐抽奖,不会重复抽到某人)   

(5)srandmember key:随机取一个元素

(6)sismember key value:判断集合是否有某个值

(7)scard key:返回集合元素的个数

(8)smove source dest value:把source的value移动到dest集合中

(9)sinter key1 key2 key3:求key1 key2 key3的交集

(10)sunion key1 key2:求key1 key2 的并集

(11)sdiff key1 key2:求key1 key2的差集

(12)sinterstore res key1 key2:求key1 key2的交集并存在res里

5、zset(sorted set:有序集合)

Redis zset 和 set 一样也是string类型元素的集合。且不允许重复的成员。不同的是每个元素都会关联一个double类型的分数。redis正是通过分数来为集合中的成员进行从小到大的排序。zset的成员是唯一的,但分数(score)却可以重复。

(1)zadd key score1 value1:添加元素

(2)zrange key start stop [withscore]:把集合排序后,返回名次[start,stop]的元素

默认是升续排列 withscores 是把score也打印出来

(3)zrank key member:查询member的排名(升序0名开始)

(4)zrangebyscore key min max [withscores] limit offset N:集合(升序)

排序后取score在[min, max]内的元素,并跳过offset个,取出N个

(5)zrevrank key member:查询member排名(降序 0名开始)

(6)zremrangebyscore key min max:按照score来删除元素,删除score在[min, max]之间

(7)zrem key value1 value2:删除集合中的元素

(8)zremrangebyrank key start end:按排名删除元素,删除名次在[start, end]之间的

(9)zcard key:返回集合元素的个数

(10)zcount key min max:返回[min, max]区间内元素数量

到此这篇关于redis常用命令整理的文章就介绍到这了,更多相关redis常用命令介绍内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

扩展阅读,根据您访问的内容系统为您准备了以下内容,希望对您有帮助。

客户端怎样查看redis的命令

Redis 命令用于在 redis 服务上执行操作。所以我们必须要启动Redis服务程序,也就是redis安装目录下的redis-server.exe,你可以双击执行,也可以打开cmd窗口,将路径定位到Redis安装目录下,通过redis-server命令执行。

要在 redis 服务上执行命令需要一个 redis 客户端。Redis 客户端在我们之前下载的的 redis 的安装包中,也就是redis-cli.exe,同理,可以双击执行也可以通过命令执行。

请问redis windows下安装后报错,怎么解决

 一、安装Redis

1. Redis官网下载,下载相应版本的Redis,在运行中输入cmd,然后把目录指向解压的Redis目录。

 

2、启动服务命令

redis-server redis.windows.conf,出现下图显示表示启动成功了。

 

3. 系统变量Path添加压缩包路径

 

这样可以直接利用redis-cli而不需要每次进入redis的安装目录,如下图所示(注意:运行以下命令需要启动Redis服务):

 

二、Redis设置成windows下的服务

1、上面虽然启动了redis,但是只要关闭cmd窗口,redis服务就会停止。所以要把redis设置成windows下的服务。

2、设置服务命令

redis-server --service-install redis.windows-service.conf --loglevel verbose

 

输入命令后没有报错,表示成功了,刷新服务,多了一个redis服务。

 

 

3. 常用的redis服务命令。

卸载服务:redis-server --service-uninstall

开启服务:redis-server --service-start

停止服务:redis-server --service-stop

 

补充:

如果修改了redis.windows.conf(非redis.windows-service.conf)文件上的配置,从服务自启动,配置的信息是不生效的,如密码配置和ip绑定。

 

解决方案:

 

在redis.windows-service.conf文件(非redis.windows.conf)自定义配置信息,因为Redis安装的服务默认加载的是该文件。

redis如何查看读取的是哪个配置文件

redis的值有5种类型,不同的类型有不同的命令来获取:
字符直接 get key

队列 左端弹出一个元素 LPOP key
哈希 HGET key field
集合 SMEMBERS key 返回集合中的所有元素
有序集合ZRANGE key start stop 更详细的命令可以查看redis常用命令。

redis lpush 后 如何取出所有相对key的值

redis的值有5种类型,不同的类型有不同的命令来获取:

字符直接 get key

队列 左端弹出一个元素 LPOP key

哈希 HGET key field

集合 SMEMBERS key 返回集合中的所有元素

有序集合ZRANGE key start stop

更详细的命令可以查看redis常用命令。

若redis版本不支持redis-cli命令,怎么连接

[Redis] redis-cli 命令总结

Redis提供了丰富的命令(command)对数据库和各种数据类型进行操作,这些command可以在Linux终端使用。

在编程时,比如使用Redis 的Java语言包,这些命令都有对应的方法。下面将Redis提供的命令做一总结。

官网命令列表:http://redis.io/commands (英文)

1、连接操作相关的命令

quit:关闭连接(connection)

auth:简单密码认证

2、对value操作的命令

exists(key):确认一个key是否存在

del(key):删除一个key

type(key):返回值的类型

keys(pattern):返回满足给定pattern的所有key

randomkey:随机返回key空间的一个key

rename(oldname, newname):将key由oldname重命名为newname,若newname存在则删除newname表示的key

dbsize:返回当前数据库中key的数目

expire:设定一个key的活动时间(s)

ttl:获得一个key的活动时间

select(index):按索引查询

move(key, dbindex):将当前数据库中的key转移到有dbindex索引的数据库

flushdb:删除当前选择数据库中的所有key

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

3、对String操作的命令

set(key, value):给数据库中名称为key的string赋予值value

get(key):返回数据库中名称为key的string的value

getset(key, value):给名称为key的string赋予上一次的value

mget(key1, key2,…, key N):返回库中多个string(它们的名称为key1,key2…)的value

setnx(key, value):如果不存在名称为key的string,则向库中添加string,名称为key,值为value

setex(key, time, value):向库中添加string(名称为key,值为value)同时,设定过期时间time

mset(key1, value1, key2, value2,…key N, value N):同时给多个string赋值,名称为key i的string赋值value i

msetnx(key1, value1, key2, value2,…key N, value N):如果所有名称为key i的string都不存在,则向库中添加string,

名称key i赋值为value i

incr(key):名称为key的string增1操作

incrby(key, integer):名称为key的string增加integer

decr(key):名称为key的string减1操作

decrby(key, integer):名称为key的string减少integer

append(key, value):名称为key的string的值附加value

substr(key, start, end):返回名称为key的string的value的子串

4、对List操作的命令

rpush(key, value):在名称为key的list尾添加一个值为value的元素

lpush(key, value):在名称为key的list头添加一个值为value的 元素

llen(key):返回名称为key的list的长度

lrange(key, start, end):返回名称为key的list中start至end之间的元素(下标从0开始,下同)

ltrim(key, start, end):截取名称为key的list,保留start至end之间的元素

lindex(key, index):返回名称为key的list中index位置的元素

lset(key, index, value):给名称为key的list中index位置的元素赋值为value

lrem(key, count, value):删除count个名称为key的list中值为value的元素。

count为0,删除所有值为value的元素,count>0从头至尾删除count个值为value的元素,count<0从尾到头删除|count|个值为value的元素。

lpop(key):返回并删除名称为key的list中的首元素 rpop(key):返回并删除名称为key的list中的尾元素

blpop(key1, key2,… key N, timeout):lpop命令的block版本。

即当timeout为0时,若遇到名称为key i的list不存在或该list为空,则命令结束。

如果timeout>0,则遇到上述情况时,等待timeout秒,如果问题没有解决,则对keyi+1开始的list执行pop操作。

brpop(key1, key2,… key N, timeout):rpop的block版本。参考上一命令。

rpoplpush(srckey, dstkey):返回并删除名称为srckey的list的尾元素,并将该元素添加到名称为dstkey的list的头部

5、对Set操作的命令

sadd(key, member):向名称为key的set中添加元素member

srem(key, member) :删除名称为key的set中的元素member

spop(key) :随机返回并删除名称为key的set中一个元素

smove(srckey, dstkey, member) :将member元素从名称为srckey的集合移到名称为dstkey的集合

scard(key) :返回名称为key的set的基数

sismember(key, member) :测试member是否是名称为key的set的元素

sinter(key1, key2,…key N) :求交集

sinterstore(dstkey, key1, key2,…key N) :求交集并将交集保存到dstkey的集合

sunion(key1, key2,…key N) :求并集

sunionstore(dstkey, key1, key2,…key N) :求并集并将并集保存到dstkey的集合

sdiff(key1, key2,…key N) :求差集

sdiffstore(dstkey, key1, key2,…key N) :求差集并将差集保存到dstkey的集合

smembers(key) :返回名称为key的set的所有元素

srandmember(key) :随机返回名称为key的set的一个元素

6、对zset(sorted set)操作的命令

zadd(key, score, member):向名称为key的zset中添加元素member,score用于排序。如果该元素已经存在,则根据score更新该元素的顺序。

zrem(key, member) :删除名称为key的zset中的元素member

zincrby(key, increment, member) :如果在名称为key的zset中已经存在元素member,则该元素的score增加increment;

否则向集合中添加该元素,其score的值为increment

zrank(key, member) :返回名称为key的zset(元素已按score从小到大排序)中member元素的rank(即index,从0开始),

若没有member元素,返回“nil”

zrevrank(key, member) :返回名称为key的zset(元素已按score从大到小排序)中member元素的rank(即index,从0开始),

若没有member元素,返回“nil”

zrange(key, start, end):返回名称为key的zset(元素已按score从小到大排序)中的index从start到end的所有元素

zrevrange(key, start, end):返回名称为key的zset(元素已按score从大到小排序)中的index从start到end的所有元素

zrangebyscore(key, min, max):返回名称为key的zset中score >= min且score <= max的所有元素

zcard(key):返回名称为key的zset的基数 zscore(key, element):返回名称为key的zset中元素element的

score zremrangebyrank(key, min, max):删除名称为key的zset中rank >= min且rank <= max的所有元素

zremrangebyscore(key, min, max) :删除名称为key的zset中score >= min且score <= max的所有元素

zunionstore / zinterstore(dstkeyN, key1,…,keyN, WEIGHTS w1,…wN, AGGREGATE SUM|MIN|MAX):对N个zset求并集和交集,

并将最后的集合保存在dstkeyN中。对于集合中每一个元素的score,在进行AGGREGATE运算前,都要乘以对于的WEIGHT参数。

如果没有提供WEIGHT,默认为1。默认的AGGREGATE是SUM,即结果集合中元素的score是所有集合对应元素进行SUM运算的值,而MIN和MAX是指,

结果集合中元素的score是所有集合对应元素中最小值和最大值。

7、对Hash操作的命令

hset(key, field, value):向名称为key的hash中添加元素field<—>value

hget(key, field):返回名称为key的hash中field对应的value

hmget(key, field1, …,field N):返回名称为key的hash中field i对应的value

hmset(key, field1, value1,…,field N, value N):向名称为key的hash中添加元素field i<—>value i

hincrby(key, field, integer):将名称为key的hash中field的value增加integer

hexists(key, field):名称为key的hash中是否存在键为field的域

hdel(key, field):删除名称为key的hash中键为field的域

hlen(key):返回名称为key的hash中元素个数

hkeys(key):返回名称为key的hash中所有键

hvals(key):返回名称为key的hash中所有键对应的value

hgetall(key):返回名称为key的hash中所有的键(field)及其对应的value

8、持久化

save:将数据同步保存到磁盘

bgsave:将数据异步保存到磁盘

lastsave:返回上次成功将数据保存到磁盘的Unix时戳

shundown:将数据同步保存到磁盘,然后关闭服务

9、远程服务控制

info:提供服务器的信息和统计

monitor:实时转储收到的请求

slaveof:改变复制策略设置

config:在运行时配置Redis服务器

  • 本文相关:
  • redis的5种数据类型与常用命令讲解
  • redis安装配置与常用命令
  • redis中散列类型的常用命令小结
  • redis字符串类型的常用命令小结
  • redis有序集合类型的常用命令小结
  • 在cenos系统下安装和配置redis数据库的教程
  • 详解redis开启远程登录连接
  • redis发布和订阅_动力节点java学院整理
  • redis集群增加节点与删除节点的方法详解
  • linux安装单机版redis的完整步骤
  • 浅谈redis采用不同内存分配器tcmalloc和jemalloc
  • 使用redis分布式锁解决并发线程资源共享问题
  • 在redhat6.4安装redis集群【教程】
  • redis 2.8-4.0过期键优化过程全纪录
  • redis中事件驱动模型示例详解
  • 客户端怎样查看redis的命令
  • 请问redis windows下安装后报错,怎么解决
  • redis如何查看读取的是哪个配置文件
  • redis lpush 后 如何取出所有相对key的值
  • 若redis版本不支持redis-cli命令,怎么连接
  • redis 执行命令后占用内存怎么增大了
  • linux中安装redis 是使用redis-cli命令的问题
  • redis虚拟机上怎么切换到local
  • 常见的redis集群方案有哪些优缺点
  • redis 命令get什么意思
  • redis 命令行的语法提示 如何去掉
  • 怎么在xshell退出redis-cli命令
  • redis 命令在redis中怎么执行的
  • 免责声明 - 关于我们 - 联系我们 - 广告联系 - 友情链接 - 帮助中心 - 频道导航
    Copyright © 2017 www.zgxue.com All Rights Reserved