常用的Redis命令介绍

常用的Redis命令介绍


Redis 是一个高性能的键值存储数据库,支持多种数据结构,如字符串(String)、哈希(Hash)、列表(List)、集合(Set)和有序集合(Sorted Set)。以下是一些常用的 Redis 命令,按数据结构分类:

通用命令

  • redis-cli:用于启动redis客户端;

  • PING:检查 Redis 服务器是否运行。

    PING
    

    输出:

    PONG
    
  • redis-cli -h <主机地址> -p <端口码数> -a <账户密码>:用于在远程的redis上执行命令;

  • EXISTS key:检查键是否存在。

    EXISTS mykey
    

    输出:

    (integer) 1  # 1表示存在,0表示不存在
    
  • DEL key:删除指定的键。

    DEL mykey
    
  • TYPE key:返回键的类型。

    TYPE mykey
    

    输出:

    string  # 可以是string、list、set、zset、hash等
    

字符串(String)

  • SET key value:设置指定键的值。

    SET mykey "Hello, Redis!"
    
  • GET key:获取指定键的值。

    GET mykey
    

    输出:

    "Hello, Redis!"
    
  • INCR key:将指定键的整数值加1。

    INCR mycounter
    
  • DECR key:将指定键的整数值减1。

    DECR mycounter
    
  • APPEND key value:将值追加到现有键的值之后。

    APPEND mykey "World"
    
  • STRLEN key:获取指定键的值的长度。

    STRLEN mykey
    
  • MSET key1 value1 key2 value2 ...:同时设置多个键值对。

    MSET key1 "value1" key2 "value2"
    
  • MGET key1 key2 ...:获取多个键的值。

    MGET key1 key2
    

哈希(Hash)

  • HSET key field value:设置哈希表中指定字段的值。

    HSET myhash field1 "value1"
    
  • HGET key field:获取哈希表中指定字段的值。

    HGET myhash field1
    

    输出:

    "value1"
    
  • HGETALL key:获取哈希表中所有字段和值。

    HGETALL myhash
    

    输出:

    1) "field1"
    2) "value1"
    
  • HSETNX key field value:仅当字段不存在时,设置哈希表字段的值。

    HSETNX myhash field1 "new_value"
    
  • HEXISTS key field:检查哈希表中指定字段是否存在。

    HEXISTS myhash field1
    
  • HDEL key field:删除哈希表中的一个或多个字段。

    HDEL myhash field1
    
  • HLEN key:获取哈希表中的字段数量。

    HLEN myhash
    
  • HKEYS key:获取哈希表中的所有字段名。

    HKEYS myhash
    
  • HVALS key:获取哈希表中的所有值。

    HVALS myhash
    

列表(List)

  • LPUSH key value:将一个值插入到列表头部。

    LPUSH mylist "element1"
    
  • RPUSH key value:将一个值插入到列表尾部。

    RPUSH mylist "element2"
    
  • LPOP key:移出并获取列表的第一个元素。

    LPOP mylist
    

    输出:

    "element1"
    
  • RPOP key:移出并获取列表的最后一个元素。

    RPOP mylist
    

    输出:

    "element2"
    
  • LRANGE key start stop:获取列表指定范围内的元素。

    LRANGE mylist 0 -1
    

    输出:

    1) "element1"
    2) "element2"
    
  • LSET key index value:将列表中指定索引位置的元素设置为新的值。

    LSET mylist 0 "new_element1"
    
  • LINDEX key index:获取列表中指定索引位置的元素。

    LINDEX mylist 0
    
  • LLEN key:获取列表的长度。

    LLEN mylist
    
  • LREM key count value:从列表中移除指定数量的某个值。

    LREM mylist 1 "element1"
    
  • LTRIM key start stop:对一个列表进行修剪,只保留指定区间内的元素。

    LTRIM mylist 0 1
    

集合(Set)

  • SADD key member:向集合添加一个或多个成员。

    SADD myset "member1"
    SADD myset "member2" "member3"
    
  • SMEMBERS key:返回集合中的所有成员。

    SMEMBERS myset
    

    输出:

    1) "member1"
    2) "member2"
    3) "member3"
    
  • SREM key member:移除集合中的一个或多个成员。

    SREM myset "member2"
    

有序集合(Sorted Set)

  • ZADD key score member:向有序集合添加一个成员,并设置分数。

    ZADD myzset 1 "member1"
    ZADD myzset 2 "member2"
    
  • ZRANGE key start stop [WITHSCORES]:按索引范围返回有序集合中的成员。

    ZRANGE myzset 0 -1 WITHSCORES
    

    输出:

    1) "member1"
    2) "1"
    3) "member2"
    4) "2"
    
  • ZREM key member:移除有序集合中的一个成员。

    ZREM myzset "member1"
    
  • ZSCORE key member:获取有序集合中成员的分数。

    ZSCORE myzset "member1"
    
  • ZCARD key:获取有序集合的成员数量。

    ZCARD myzset
    
  • ZCOUNT key min max:计算指定分数区间内成员的数量。

    ZCOUNT myzset 1 2
    
  • ZRANK key member:返回有序集合中指定成员的排名(从低到高)。

    ZRANK myzset "member1"
    
  • ZREVRANK key member:返回有序集合中指定成员的排名(从高到低)。

    ZREVRANK myzset "member1"
    
  • ZREM key member:移除有序集合中的一个或多个成员。

    ZREM myzset "member1"
    

集合(Set)

  • SISMEMBER key member:判断成员是否存在于集合中。

    SISMEMBER myset "member1"
    
  • SCARD key:获取集合的成员数量。

    SCARD myset
    
  • SPOP key [count]:移除并返回集合中的一个或多个随机成员。

    SPOP myset 1
    
  • SRANDMEMBER key [count]:返回集合中的一个或多个随机成员,但不移除。

    SRANDMEMBER myset 2
    
  • SMOVE source destination member:将指定成员从一个集合移动到另一个集合。

    SMOVE myset1 myset2 "member1"

事务(Transaction)

  • MULTI:标记一个事务块的开始。

    MULTI
    
  • EXEC:执行所有在事务块内的命令。

    EXEC
    
  • DISCARD:取消事务块内的所有命令。

    DISCARD
    
  • WATCH key:监视一个(或多个)键,如果在事务执行之前这个(或这些)键被修改,则事务被打断。

    WATCH mykey
    
  • UNWATCH:取消所有键的监视。

    UNWATCH
    

发布/订阅(Pub/Sub)

  • PUBLISH channel message:将消息发布到指定频道。

    PUBLISH mychannel "Hello, World!"
    
  • SUBSCRIBE channel:订阅指定的频道。

    SUBSCRIBE mychannel
    
  • UNSUBSCRIBE [channel ...]:退订指定的频道。

    UNSUBSCRIBE mychannel

脚本(Scripting)

  • EVAL script numkeys key [key ...] arg [arg ...]:执行 Lua 脚本。

    EVAL "return redis.call('set', KEYS[1], ARGV[1])" 1 mykey "Hello"
    
  • SCRIPT LOAD script:将脚本加载到脚本缓存但不执行。

    SCRIPT LOAD "return redis.call('set', KEYS[1], ARGV[1])"
    
  • EVALSHA sha1 numkeys key [key ...] arg [arg ...]:根据给定的 SHA1 校验码执行缓存在服务器中的脚本。

    EVALSHA "sha1" 1 mykey "Hello"
    

其他常用命令

  • KEYS pattern:查找所有符合给定模式的键。

    KEYS *
    

    输出示例:

    1) "mykey"
    2) "myhash"
    3) "mylist"
    4) "myset"
    
  • EXPIRE key seconds:为键设置生存时间(以秒为单位)。

    EXPIRE mykey 3600
    
  • TTL key:获取键的剩余生存时间(以秒为单位)。

    TTL mykey
    

    输出:

    (integer) 3599
    
  • FLUSHDB:删除当前数据库中的所有键。

    FLUSHDB
    
  • FLUSHALL:删除所有数据库中的所有键。

    FLUSHALL
    
  • SAVE:同步保存数据到磁盘。

    SAVE
    
  • BGSAVE:在后台异步保存数据到磁盘。

    BGSAVE
    
  • INFO:获取 Redis 服务器的信息和统计数据。

    INFO
    
  • CONFIG GET parameter:获取 Redis 配置参数的值。

    CONFIG GET maxmemory
    
  • CONFIG SET parameter value:设置 Redis 配置参数的值。

    CONFIG SET maxmemory 512mb
    

这些命令只是 Redis 提供的部分功能,Redis 的命令集合非常丰富,能够满足各种数据管理和处理需求。可以参考Redis 官方文档来深入了解和使用更多的命令。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/44726.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

51单片机:使用蜂鸣器演奏《盗将行》(附代码详解)

一、功能实现&#xff1a; 二、代码内容&#xff1a; 主函数.c #include <REGX52.H> #include "Delay.h" #include "Timer0.h"sbit BuzzerP2^5;#define SPEED 500 //原先默认一个四分音符延迟500ms#define P 0 //休止 #define L1 1 //低音…

LLaMA-Factory:开源的低代码大模型训练框架

LLaMA-Factory 是一个由零隙智能&#xff08;SeamLessAI&#xff09;开源的低代码大模型训练框架&#xff0c;它集成了业界最广泛使用的微调方法和优化技术&#xff0c;并支持众多开源模型的微调和二次训练。 一、功能特点 支持多种开源模型&#xff1a;LLaMA-Factory支持包括…

辐射神经场算法——Instant-NGP / Mipi-NeRF 360 / 3D Gaussian Splatting

辐射神经场算法——Instant-NGP / Mipi-NeRF 360 / 3D Gaussian Splatting 1. Instant-NGP1. MultiResolution Hash Encoding1.2 Accelerated Ray Marching1.3 实验结果 2. Mip-NeRF 3602.1 场景参数化2.2 在线蒸馏2.3 失真正则化2.4 实验结果 3. 3D Gaussian Splatting3.1 Dif…

krpano开启日志公能

<krpano version"1.21" title"博物馆" debugmode"true" > 之后鼠标右键菜单栏最后一行 点击&#xff08;开启后会发生变化&#xff09;。

汽车预约维修小程序的设计

管理员账户功能包括&#xff1a;系统首页&#xff0c;个人中心&#xff0c;技师管理&#xff0c;技师信息管理&#xff0c;用户预约管理&#xff0c;取消预约管理&#xff0c;订单信息管理&#xff0c;系统管理 微信端账号功能包括&#xff1a;系统首页&#xff0c;技师信息&a…

新开发的软件老被系统拦截有什么办法解决吗?

一套新开发的软件要想在windows操作系统畅通无阻&#xff0c;那就需要使用代码签名证书&#xff0c;只要是对软件进行实名从而证明软件发布者身份&#xff0c;确保该软件是一个合法有效的主体开发的&#xff0c;也是让这个软件开发者承担相应的责任。 特别主要如果要获得即时性…

【深度学习入门篇 ③】PyTorch的数据加载

【&#x1f34a; 易编橙&#xff1a;一个帮助编程小伙伴少走弯路的终身成长社群&#x1f34a; 】 大家好&#xff0c;我是小森( &#xfe61;ˆoˆ&#xfe61; ) &#xff01; 易编橙终身成长社群创始团队嘉宾&#xff0c;橙似锦计划领衔成员、阿里云专家博主、腾讯云内容共创…

【漏洞复现】宏景HCM-LoadOtherTreeServlet SQL注入

声明&#xff1a;本文档或演示材料仅用于教育和教学目的。如果任何个人或组织利用本文档中的信息进行非法活动&#xff0c;将与本文档的作者或发布者无关。 一、漏洞描述 宏景HCM人力资源信息管理系统是一个全面的人力资源管理软件&#xff0c;它覆盖了人力资源管理的各个模块…

报错:python扩展中的调试器不再支持小于3.7的python版本(debugpy)

报错&#xff1a;python扩展中的调试器不再支持小于3.7的python版本 原因1&#xff1a; debugpy的版本问题原因2 原因1&#xff1a; debugpy的版本问题 是debugpy和你vscode安装的python解释器不匹配&#xff0c;根据你使用的python解释器的版本重新安装一个debugpy。 原因2 …

华为官方出品:《应用现代化实践指南》电子书,可免费下载

本期云享书库为各位开发者带来了应用现代化方面的技术内容。 在数字化时代&#xff0c;企业面临着前所未有的机遇与挑战。随着技术的飞速发展&#xff0c;特别是云计算、大数据、人工智能&#xff08;AI&#xff09;和机器学习&#xff08;ML&#xff09;的兴起&#xff0c;正…

Python爬虫速成之路(1):获取网页源代码

hello hello~ &#xff0c;这里是绝命Coding——老白~&#x1f496;&#x1f496; &#xff0c;欢迎大家点赞&#x1f973;&#x1f973;关注&#x1f4a5;&#x1f4a5;收藏&#x1f339;&#x1f339;&#x1f339; &#x1f4a5;个人主页&#xff1a;绝命Coding-CSDN博客 &a…

C#面:简述什么是中间件(Middleware)?

中间件是组装到应⽤程序管道中以处理请求和响应的软件。 每个组件&#xff1a; 选择是否将请求传递给管道中的下⼀个组件。 可以在调⽤管道中的下⼀个组件之前和之后执⾏⼯作。 请求委托&#xff08;Request delegates&#xff09;⽤于构建请求管道&#xff0c;处理每个HTTP请…

Threadlocal使用获取最后更新人信息

Threadlocal 的作用范围是一个线程&#xff0c;tomcat启动默认开启一个线程 首先点击登录&#xff0c;登录方法会返回token 拿到token后放在请求头中发送商品的插入请求&#xff0c;在插入是设置拿到token中的nickName&#xff08;花名&#xff09;放入&#xff08;lastUpdate…

windows系统长时间不用,无法唤醒

问题背景 在我们使用windows系统的时候&#xff0c;有这样一种情况&#xff0c;就是电脑长时间不不操作&#xff0c;就会“睡死”过去。此时再用鼠标键盘都无法将其唤醒。没办法只能长按电源键强制关机&#xff0c;再重启。那么该如何解决这种问题呢&#xff1f; 原因分析 系…

PLSQL Day7

--9.用户键盘输入5个数字&#xff0c;将数字按从小到大的顺序存入集合中&#xff1a;declare declare type num_type is table of number; n_tab num_type; temp_n number ; begin n_tab: num_type(&n1,&n2,&n3,&n4,&n5); for i in 1..n_tab.co…

高可用hadoop分布式节点的扩容

解决方案 修改hdfs-site.xml 文件 原xml文件 <?xml version"1.0" encoding"UTF-8"?> <?xml-stylesheet type"text/xsl" href"configuration.xsl"?> <!--Licensed under the Apache License, Version 2.0 (th…

编程参考 - 在C++类成员函数声明中使用const关键字

在 C 中&#xff0c;可以在类成员函数声明中使用 const 关键字来表示函数不修改对象的状态。这就是所谓的 "const 成员函数"。将成员函数声明为 const 时&#xff0c;意味着该函数承诺不更改对象的任何成员变量&#xff08;标记为可变的变量除外&#xff09;。 In C,…

福克斯波罗 FOXBORO FBM201模块 控制器 处理器

福克斯波罗 FOXBORO FBM201 控制器具有紧凑和坚固的设计&#xff0c;使其非常适合在恶劣的工业环境中使用。它可以承受极端的温度&#xff0c;湿度和振动&#xff0c;并且以最少的维护来实现持久的性能。 控制器配备了先进的控制算法&#xff0c;使其能够快速准确地响应过程条…

Python: 从 2.7 升级到 3,我比 vue 慢了一点点

小破站搜索云前端&#xff0c;查看视频版 2024 年 7 月 7 日&#xff0c;据一位长期的Python观察者爆料&#xff0c;Fedora 41 系统最终将停止支持 Python 2.7。这是Python 2系列的最后一个版本&#xff0c;Python 2.7在Fedora Linux 41中将被退役且不再替代。除了PyPy之外&…

利用【Python】【线性规划】优化工厂生产:实现智能资源配置与利润最大化的现代解决方案

目录 1. 问题背景和描述 1.1 问题背景 1.2 问题描述 2. 数学模型的建立 2.1决策变量 2.2 目标函数 2.3 约束条件 2.4 数学模型总结 3. 使用Python解决线性规划问题 3.1 导入必要的库 3.2 定义目标函数系数 3.3 定义不等式约束矩阵和向量 3.4 定义变量的边界 非负…