Redis 常用指令详解

Redis是一款开源的、高性能的键值对存储数据库,常用于缓存、会话存储以及其他需要快速访问的数据场景。本文将介绍Redis的一些常用指令,并通过代码示例进行说明。
在这里插入图片描述

一、连接操作指令

1. 连接 Redis 服务器

./redis-cli -h 127.0.0.1 -p 6379

2. 认证(如果设置了密码)

AUTH yourpassword

3. 退出 Redis 客户端

QUIT

二、数据库操作指令

1. 选择数据库

Redis 默认有 16 个数据库(0-15),通过 SELECT 命令来切换数据库。

SELECT 1  # 切换到第 2 个数据库(从 0 开始计数)

2. 查看数据库中 key 的数量

DBSIZE

3. 清空当前数据库

FLUSHDB

4. 清空所有数据库

FLUSHALL

三、Key 操作指令

1. 检查 key 是否存在

EXISTS keyname

返回 1 表示存在,返回 0 表示不存在。

2. 删除 key

DEL keyname

3. 重命名 key

RENAME oldname newname

4. 获取 key 的类型

TYPE keyname

返回的类型包括 string、list、set、zset、hash 和 stream。

5. 匹配并查看指定的 key

KEYS pattern

例如:

KEYS h?llo  # 匹配 hello, hallo 和 hxllo

6. 设置 key 的过期时间

EXPIRE keyname seconds

使用 TTL 命令查看剩余时间,单位为秒。

TTL keyname

四、String 操作指令

1. 设置 String 值

SET keyname value

2. 获取 String 值

GET keyname

3. 追加 String 值

APPEND keyname value

4. 批量设置多个 String 值

MSET key1 value1 key2 value2 ...

5. 批量获取多个 String 值

MGET key1 key2 ...

6. 仅在 key 不存在时设置值

SETNX keyname value

7. 设置带过期时间的 String 值

SETEX keyname seconds value

8. 对 String 值进行递增或递减操作

INCR keyname  # 递增 1
DECR keyname  # 递减 1
INCRBY keyname increment  # 递增指定的值
DECRBY keyname decrement  # 递减指定的值

五、List 操作指令

1. 在 List 头部添加元素

LPUSH keyname value

2. 在 List 尾部添加元素

RPUSH keyname value

3. 获取 List 的长度

LLEN keyname

4. 获取 List 指定范围的元素

LRANGE keyname start stop

5. 移除并返回 List 的第一个元素

LPOP keyname

6. 移除并返回 List 的最后一个元素

RPOP keyname

7. 裁剪 List

LTRIM keyname start stop

六、Set 操作指令

1. 添加元素到 Set

SADD keyname member

2. 移除 Set 中的元素

SREM keyname member

3. 获取 Set 的元素个数

SCARD keyname

4. 判断元素是否在 Set 中

SISMEMBER keyname member

5. 获取 Set 的所有元素

SMEMBERS keyname

6. 求两个 Set 的交集

SINTER key1 key2

7. 求两个 Set 的并集

SUNION key1 key2

8. 求两个 Set 的差集

SDIFF key1 key2

七、Hash 操作指令

1. 添加元素到 Hash

HSET keyname field value

2. 获取 Hash 中指定 field 的值

HGET keyname field

3. 批量设置 Hash 的多个 field

HMSET keyname field1 value1 field2 value2 ...

4. 批量获取 Hash 的多个 field

HMGET keyname field1 field2 ...

5. 判断 Hash 中是否存在指定的 field

HEXISTS keyname field

6. 获取 Hash 中所有 field 和 value

HGETALL keyname

八、其他高级操作指令

1. 远程服务控制

  • 获取服务器信息:
INFO
  • 实时转储收到的请求:
MONITOR

2. 持久化

  • 将数据同步保存到磁盘:
SAVE
  • 将数据异步保存到磁盘:
BGSAVE
  • 返回上次成功保存数据的时间戳:
LASTSAVE

3. 数据安全

可以通过设置密码来增加 Redis 的安全性,在 redis.conf 文件中配置 requirepass 属性,然后在客户端使用 AUTH 命令进行认证。

AUTH yourpassword

总结

Redis 提供了丰富的操作指令,可以满足各种数据操作需求。本文介绍了 Redis 的一些常用指令,并通过代码示例进行了说明。希望这些指令能帮助你更好地使用 Redis。程序员转大模型开发,来看我的《ChatGPT+AI项目实战,打造多端智能虚拟数字人》视频课程。
在这里插入图片描述

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

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

相关文章

计算广告第三版pdf

需要该书pdf版本的同学点赞,私信我:

Spark_入库时报错ORA-00001 unique constraint violated 解决办法

首先可能是数据入重复了 检查一下看看是否入库前删除了分区的数据,可能是重复数据入库的问题,如果不是这个那么继续排查。 入库的数据有问题,检测方法 如果报主键冲突了,则group by 一下id,date,然后select 的时候加一…

飞睿智能超宽带UWB音频传输模块,超低延迟数据传输,实时音频声音更纯净

在信息爆炸的时代,音频传输技术正以未有的速度发展,创新我们进入一个全新的听觉世界。今天,我们要探讨的,就是这场技术创新中的一颗璀璨明星——飞睿智能超宽带(UWB)音频传输模块。它以其独特的优势&#x…

RHCSA课后练习1

文件管理命令练习 vi/vim练习 vim newfile 按 a 进入编辑模式 :r 文件 在末尾模式中插入文件 :%s/#/ /g 先将#标记为匹配项:%g#d 再删除 : set nu 开启行号 自行组cp 用grep命令找到6段再用tail命令选中第六段 用find查找 [A-Z]代表所有…

如何写一个视频编码器演示篇

先前写过《视频编码原理简介》,有朋友问光代码和文字不太真切,能否补充几张图片,今天我们演示一下: 这是第一帧画面:P1(我们的参考帧) 这是第二帧画面:P2(需要编码的帧&…

python包以及异常、模块、包的综合案例(较难)

1.自定义包 python中模块是一个文件,而包就是一个文件夹 有这个_init_.py就是python包,没有就是简单的文件夹 包的作用:当我们的模块越来越多时,包可以帮助我们管理这些模块,包的作用就是包含多个模块,但包…

基于JSP的校园宿舍电费缴纳系统【附源码】

基于JSP的校园宿舍电费缴纳系统 效果如下: 系统首页界面 学生登录界面 公告栏页面 在线留言页面 个人中心界面 管理员登录界面 管理员功能界面 宿舍信息管理界面 余额管理界面 使用电量管理界面 余额提醒管理界面 学生功能界面 研究背景 随着网络的高速发展&…

使用休眠的方式来解决电脑合盖后偶尔不能正常睡眠的问题

背景描述 用过Windows笔记本电脑的用户应该都偶尔遇到过这样的一个问题,就是电脑直接合上盖后放在包里,按道理来说应该会自动进入睡眠模式,但是等电脑再从包里拿出来时发现电脑很烫,并且已经没电了,似乎并没有进入到休…

【乐企文件生成工程】关于乐企文件生成工程的详细介绍

发票文件生成方式有两种思路: 1、根据已有的OFD模板,动态替换ofd模板内容;之后将ofd转pdf(局限:单行问题不大) 可在【乐企】专栏查看详细代码详情可以在此处了解【乐企】有关乐企能力测试接口对接-基础版&a…

Web,RESTful API 在微服务中的作用是什么?

大家好,我是锋哥。今天分享关于【Web,RESTful API 在微服务中的作用是什么?】面试题?希望对大家有帮助; Web,RESTful API 在微服务中的作用是什么? 在微服务架构中,Web 和 RESTful …

Python语法结构(三)(Python Syntax Structure III)

💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:Linux运维老纪的首页…

Python编程基础入门:从风格到数据类型再到表达式

前期已经详细介绍了环境搭建:PycharmPython、VsCodePython Python编程基础入门:从风格到数据类型再到表达式 在编写Python程序时,理解其基础结构和语法是每个初学者的必修课。这篇文章将带你深入了解Python的基本编程风格、数据类型、类型转…

【功能安全】相关项定义item definition

目录 01 item definition定义 02 相关项组成 03 相关项最佳实践 📖 推荐阅读 01 item definition定义 概念阶段的开发是以相关项定义(Item Definition)开始的,相关项定义是对系统的描述,此系统也是标准中安全要求应用的对象。 相关项定义目的: a) 在整车层面对相关…

【跑酷项目02】实现触发并在前方克隆金币

完整代码 using System.Collections; using System.Collections.Generic; using UnityEngine;public class CoinColoneManager : MonoBehaviour {// 这个脚本用来检测金币触发区,一旦触发就在前方指定位置克隆金币// 首先做触发检测 OnEnterTrigger(), // 用克隆函…

云计算第四阶段: cloud二周目 07-08

cloud 07 一、k8s服务管理 创建服务 # 资源清单文件 [rootmaster ~]# kubectl create service clusterip websvc --tcp80:80 --dry-runclient -o yaml [rootmaster ~]# vim websvc.yaml --- kind: Service apiVersion: v1 metadata:name: websvc spec:type: ClusterIPselector…

ChatTTS在Windows电脑的本地部署与远程生成音频详细实战指南

文章目录 前言1. 下载运行ChatTTS模型2. 安装Cpolar工具3. 实现公网访问4. 配置ChatTTS固定公网地址 前言 本篇文章主要介绍如何快速地在Windows系统电脑中本地部署ChatTTS开源文本转语音项目,并且我们还可以结合Cpolar内网穿透工具创建公网地址,随时随…

react里实现左右拉伸实战

封装组件: 我自己写的一个简单的组件,可能有bug。不想自己写,建议用第三方库实现。 新建一个resizeBox.tsx文件写上代码如下: import React, { ReactNode, useState, useEffect, useRef } from react; import styles from &quo…

【中危】Oracle TNS Listener SID 可以被猜测

一、漏洞详情 Oracle 打补丁后,复测出一处中危漏洞:Oracle TNS Listener SID 可以被猜测。 可以通过暴力猜测的方法探测出Oracle TNS Listener SID,探测出的SID可以用于进一步探测Oracle 数据库的口令。 建议解决办法: 1. 不应该使…

【某农业大学计算机网络实验报告】实验四 路由信息协议RIP

实验目的: 1.深入了解RIP协议的特点和配置方法:通过此次实验,掌握RIP协议作为一种动态路由协议的基本工作原理,了解其距离向量算法的核心概念,以及如何在网络设备上配置RIP协议; 2.验证RIP协议…

基于微信小程序的电影交流平台

作者:计算机学姐 开发技术:SpringBoot、SSM、Vue、MySQL、JSP、ElementUI、Python、小程序等,“文末源码”。 专栏推荐:前后端分离项目源码、SpringBoot项目源码、Vue项目源码、SSM项目源码、微信小程序源码 精品专栏:…