当前位置: 首页 > news >正文

redis学习笔记(三)

文章目录

  • key操作
    • (1)查找键
    • (2)判断键是否存在
    • (3)查看键的的值的数据类型
    • (4)删除键以及键对应的值
    • (5)查看键的有效期
    • (6)设置key的有效期
    • (7)清空所有key
    • (8)key重命名

key操作

redis中所有的数据都是通过key(键)来进行操作,这里我们学习一下关于任何数据类型都通用的命令。

(1)查找键

参数支持简单的正则表达式

keys pattern

查看所有键

keys *

例子:

# 查看名称中包含`a`的键
keys *a*
# 查看以a开头的键
keys a*
# 查看以a结尾的键
keys *a
127.0.0.1:6379> keys *
1) "name"
2) "user_01"
3) "age"
127.0.0.1:6379> keys *_01
1) "user_01"
127.0.0.1:6379> keys *a*
1) "name"
2) "age"127.0.0.1:6379> exists name
(integer) 1
127.0.0.1:6379> exists names
(integer) 0127.0.0.1:6379> type name
string127.0.0.1:6379> del name age
(integer) 2
127.0.0.1:6379> keys *
1) "user_01"127.0.0.1:6379> setex name  100 llz
OK
127.0.0.1:6379> get name
"llz"
127.0.0.1:6379> ttl name
(integer) 79
127.0.0.1:6379> ttl name
(integer) 75
127.0.0.1:6379> ttl name
(integer) 61
127.0.0.1:6379> get age
(nil)
127.0.0.1:6379> expire age 15
(integer) 0
127.0.0.1:6379> get age
(nil)127.0.0.1:6379> set age 18
OK
127.0.0.1:6379> get age
"18"
127.0.0.1:6379> rename age nianlin
OK127.0.0.1:6379> select 1
OK
127.0.0.1:6379[1]> get name
(nil)
127.0.0.1:6379[1]> set name lz
OK
127.0.0.1:6379[1]> get name
"lz"
127.0.0.1:6379[1]>

(2)判断键是否存在

如果存在返回1,不存在返回0

exists key1

判断键title是否存在

exists title

(3)查看键的的值的数据类型

type key# string    字符串
# hash      哈希类型
# list      列表类型
# set       无序集合
# zset      有序集合

查看键的值类型

type a1
# string
sadd member_list xiaoming xiaohong xiaobai
# (integer) 3
type member_list
# set
hset user_1 name xiaobai age 17 sex 1
# (integer) 3
type user_1
# hash
lpush brothers zhangfei guangyu liubei xiaohei
# (integer) 4
type brothers
# listzadd achievements 61 xiaoming 62 xiaohong 83 xiaobai  78 xiaohei 87 xiaohui 99 xiaolong
# (integer) 6
type achievements
# zset

(4)删除键以及键对应的值

del key1 key2 ...

(5)查看键的有效期

ttl key# 结果结果是秒作为单位的整数
# -1 表示永不过期
# -2 表示当前数据已经过期,查看一个不存在的数据的有效期就是-2

(6)设置key的有效期

给已有的数据重新设置有效期,redis中所有的数据都可以通过expire来设置它的有效期。有效期到了,数据就被删除。

expire key seconds

(7)清空所有key

慎用,一旦执行,则redis所有数据库0~15的全部key都会被清除

flushall

(8)key重命名

rename  oldkey newkey

把name重命名为username

set name yuan
rename name username
get username

select切换数据库

redis的配置文件中,默认有0~15之间的16个数据库,默认操作的就是0号数据库
select <数据库ID>

操作效果:

# 默认处于0号库
127.0.0.1:6379> select 1
OK
# 这是在1号库
127.0.0.1:6379[1]> set name xiaoming
OK
127.0.0.1:6379[1]> select 2
OK
# 这是在2号库
127.0.0.1:6379[2]> set name xiaohei
OK
127.0.0.1:6379[1]> select 0
OK
127.0.0.1:6379> keys *
1) "name"
2) "nianlin"
3) "user_01"
127.0.0.1:6379> flushall
OK
127.0.0.1:6379>
127.0.0.1:6379> keys *
(empty list or set)

相关文章:

redis学习笔记(三)

文章目录 key操作&#xff08;1&#xff09;查找键&#xff08;2&#xff09;判断键是否存在&#xff08;3&#xff09;查看键的的值的数据类型&#xff08;4&#xff09;删除键以及键对应的值&#xff08;5&#xff09;查看键的有效期&#xff08;6&#xff09;设置key的有效期…...

Go语言template模板语法

Go语言模板语法 文章目录 <center> Go语言模板语法连接前后端的符号: {{}}注释管道(pipeline)变量条件判断range 关键字with 关键字比较函数自定义函数嵌套模板模板继承 连接前后端的符号: {{}} 模板语法都包含在{{}}之中,其中{{.}}中的.表示当前对象.在传入一个结构体对…...

Python-OpenCV中的图像处理-物体跟踪

Python-OpenCV中的图像处理-物体跟踪 物体跟踪 物体跟踪 现在我们知道怎样将一幅图像从 BGR 转换到 HSV 了&#xff0c;我们可以利用这一点来提取带有某个特定颜色的物体。在 HSV 颜色空间中要比在 BGR 空间中更容易表示一个特定颜色。在我们的程序中&#xff0c;我们要提取的…...

本地Linux 部署 Dashy 并远程访问教程

文章目录 简介1. 安装Dashy2. 安装cpolar3.配置公网访问地址4. 固定域名访问 转载自cpolar极点云文章&#xff1a;本地Linux 部署 Dashy 并远程访问 简介 Dashy 是一个开源的自托管的导航页配置服务&#xff0c;具有易于使用的可视化编辑器、状态检查、小工具和主题等功能。你…...

6.2 口令破解攻击

数据参考&#xff1a;CISP官方 目录 口令安全问题口令破解攻击口令破解安全防护口令使用安全管理 一、口令安全问题 什么是口令 身份验证的机制&#xff0c;俗称 “密码"&#xff0c;对应英文单词为 password成本较低&#xff0c;得到广泛应用信息安全中的 “密码”…...

SSL账号申请及配置

摘自个人印象笔记https://app.yinxiang.com/fx/db244155-c858-4d8a-93a8-08071d168dc8ssl申请平台&#xff1a;https://blog.freessl.cn/ ajian51168qq.com … 操作说明&#xff1a;https://blog.freessl.cn/acme-quick-start/ nginx配置&#xff1a; upstream local_tomcat{s…...

JS代码混淆加密有什么用?

JS加密、JS混淆&#xff0c;有这些用&#xff1a; 1、前端JS代码&#xff0c;如果不加密&#xff0c;它人可以随便copy、任意修改。自己写的代码&#xff0c;可以轻易成为别人的成果。 对JS代码混淆加密&#xff0c;则可以防止这种他人随意白嫖的问题&#xff0c;代码是自己辛…...

Oracle的function執行DML操作

Oracle的function並不支持DML操作&#xff0c;但可以使用一段指令&#xff0c;讓這段pl/sql成為獨立的事務。 当使用 PRAGMA AUTONOMOUS_TRANSACTION 时&#xff0c;可以在一个过程或函数的独立代码块中执行数据库操作&#xff0c;而不受外部事务的影响。这意味着内部事务的提交…...

大语言模型:LLM的概念是个啥?

一、说明 大语言模型&#xff08;维基&#xff1a;LLM- large language model&#xff09;是以大尺寸为特征的语言模型。它们的规模是由人工智能加速器实现的&#xff0c;人工智能加速器能够处理大量文本数据&#xff0c;这些数据大部分是从互联网上抓取的。 [1]所构建的人工神…...

21 | 朝阳医院数据分析

朝阳医院2018年销售数据为例,目的是了解朝阳医院在2018年里的销售情况,通过对朝阳区医院的药品销售数据的分析,了解朝阳医院的患者的月均消费次数,月均消费金额、客单价以及消费趋势、需求量前几位的药品等。 import numpy as np from pandas import Series,DataFrame impo…...

二十二、责任链模式

目录 1、使用demo演示责任链模式2、传统方案解决oa系统审批3、传统方案解决oa系统审批存在的问题4、职责链模式基本介绍5、职责链模式原理类图6、职责链模式解决oa系统采购审批7、职责链模式的注意事项和细节8、职责链模式的实际使用场景举例 1、使用demo演示责任链模式 学校o…...

opencv,opengl,osg,vulkan,webgL,opencL,cuda,osg,vtk,ogre的区别

OpenCV OpenCV是一个基于BSD许可&#xff08;开源&#xff09;发行的跨平台计算机视觉和机器学习软件库&#xff0c;可以运行在Linux、Windows、Android和Mac OS操作系统上。 它轻量级而且高效——由一系列 C 函数和少量 C 类构成&#xff0c;同时提供了Python、Ruby、MATLAB等…...

基于颜色进行轮廓分割,基于opencv和python

1. 阈值调整&#xff0c;交互式的阈值调整&#xff0c;确定上限和下限&#xff1a; import cv2 as cv import numpy as npdef Tcallback(event):H cv.getTrackbarPos(H, show_pic)S cv.getTrackbarPos(S, show_pic)V cv.getTrackbarPos(V, show_pic)H0 cv.getTrackbarPos(…...

TCP重连 - 笔记

1 C++ TCP/IP 关于tcp断线重连的问题 C++ TCP/IP 关于tcp断线重连的问题_c++ 断线重连_Bug&猿柒。的博客-CSDN博客 2 C++基础--完善Socket C/S ,实现客户端,服务器端断开重连 https://www.cnblogs.com/kingdom_0/articles/2571727.html 3 C++实现Tcp通信(考虑客户…...

Qt画波浪球(小费力)

画流动波浪 #ifndef WIDGET3_H #define WIDGET3_H#include <QWidget> #include <QtMath> class widget3 : public QWidget {Q_OBJECT public:explicit widget3(QWidget *parent nullptr);void set_value(int v){valuev;}int get_value(){return value;} protecte…...

监控Kubernetes Node组件的关键指标

所有的 Kubernetes 组件&#xff0c;都提供了 /metrics 接口用来暴露监控数据&#xff0c;Kube-Proxy 也不例外。通过 ss 或者 netstat 命令可以看到 Kube-Proxy 监听的端口&#xff0c;一个是 10249&#xff0c;用来暴露监控指标&#xff0c;一个是 10256 &#xff0c;作为…...

Mysql之优化-主从复制

1、索引优化 &#xff08;1&#xff09;性能下降&#xff0c;执行、等待时间长&#xff1a;数据过多—》分库分表&#xff0c;关联太多&#xff0c;索引未使用&#xff0c;参数调优 &#xff08;2&#xff09;索引失效情况&#xff1a;索引列计算或函数等操作&#xff0c;索引…...

编程之道:构建优雅可维护代码的基石

编程世界犹如一座庞大的建筑群&#xff0c;而代码构建块则是这座建筑的基石。类比于建筑学中的基础构件&#xff0c;代码构建块是软件开发过程中不可或缺的元素。本文将深入探讨代码构建块的概念以及其在编写高质量代码方面的重要性。 什么是代码构建块&#xff1f; 在软件开发…...

十大经典排序算法

目录 前言 冒泡排序 选择排序 插入排序 希尔排序 归并排序 快速排序 堆排序 计数排序 桶排序 基数排序 十大排序之间的比较 总结 前言 学了数据结构之后一直没有进行文字性的总结&#xff0c;现在趁着还有点时间把相关排序的思路和代码实现来写一下。概念的话网上…...

Linux6.37 Kubernetes 集群调度

文章目录 计算机系统5G云计算第三章 LINUX Kubernetes 集群调度一、调度约束1.调度过程2.指定调度节点3.亲和性1&#xff09;节点亲和性2&#xff09;Pod 亲和性3&#xff09;键值运算关系 4.污点(Taint) 和 容忍(Tolerations)1&#xff09;污点(Taint)2&#xff09;容忍(Toler…...

转转集团旗下首家二手多品类循环仓店“超级转转”开业

6月9日&#xff0c;国内领先的循环经济企业转转集团旗下首家二手多品类循环仓店“超级转转”正式开业。 转转集团创始人兼CEO黄炜、转转循环时尚发起人朱珠、转转集团COO兼红布林CEO胡伟琨、王府井集团副总裁祝捷等出席了开业剪彩仪式。 据「TMT星球」了解&#xff0c;“超级…...

数据库分批入库

今天在工作中&#xff0c;遇到一个问题&#xff0c;就是分批查询的时候&#xff0c;由于批次过大导致出现了一些问题&#xff0c;一下是问题描述和解决方案&#xff1a; 示例&#xff1a; // 假设已有数据列表 dataList 和 PreparedStatement pstmt int batchSize 1000; // …...

零基础在实践中学习网络安全-皮卡丘靶场(第九期-Unsafe Fileupload模块)(yakit方式)

本期内容并不是很难&#xff0c;相信大家会学的很愉快&#xff0c;当然对于有后端基础的朋友来说&#xff0c;本期内容更加容易了解&#xff0c;当然没有基础的也别担心&#xff0c;本期内容会详细解释有关内容 本期用到的软件&#xff1a;yakit&#xff08;因为经过之前好多期…...

听写流程自动化实践,轻量级教育辅助

随着智能教育工具的发展&#xff0c;越来越多的传统学习方式正在被数字化、自动化所优化。听写作为语文、英语等学科中重要的基础训练形式&#xff0c;也迎来了更高效的解决方案。 这是一款轻量但功能强大的听写辅助工具。它是基于本地词库与可选在线语音引擎构建&#xff0c;…...

Redis的发布订阅模式与专业的 MQ(如 Kafka, RabbitMQ)相比,优缺点是什么?适用于哪些场景?

Redis 的发布订阅&#xff08;Pub/Sub&#xff09;模式与专业的 MQ&#xff08;Message Queue&#xff09;如 Kafka、RabbitMQ 进行比较&#xff0c;核心的权衡点在于&#xff1a;简单与速度 vs. 可靠与功能。 下面我们详细展开对比。 Redis Pub/Sub 的核心特点 它是一个发后…...

SQL注入篇-sqlmap的配置和使用

在之前的皮卡丘靶场第五期SQL注入的内容中我们谈到了sqlmap&#xff0c;但是由于很多朋友看不了解命令行格式&#xff0c;所以是纯手动获取数据库信息的 接下来我们就用sqlmap来进行皮卡丘靶场的sql注入学习&#xff0c;链接&#xff1a;https://wwhc.lanzoue.com/ifJY32ybh6vc…...

HTML中各种标签的作用

一、HTML文件主要标签结构及说明 1. <&#xff01;DOCTYPE html> 作用&#xff1a;声明文档类型&#xff0c;告知浏览器这是 HTML5 文档。 必须&#xff1a;是。 2. <html lang“zh”>. </html> 作用&#xff1a;包裹整个网页内容&#xff0c;lang"z…...

OpenGL-什么是软OpenGL/软渲染/软光栅?

‌软OpenGL&#xff08;Software OpenGL&#xff09;‌或者软渲染指完全通过CPU模拟实现的OpenGL渲染方式&#xff08;包括几何处理、光栅化、着色等&#xff09;&#xff0c;不依赖GPU硬件加速。这种模式通常性能较低&#xff0c;但兼容性极强&#xff0c;常用于不支持硬件加速…...

解密鸿蒙系统的隐私护城河:从权限动态管控到生物数据加密的全链路防护

摘要 本文以健康管理应用为例&#xff0c;展示鸿蒙系统如何通过细粒度权限控制、动态权限授予、数据隔离和加密存储四大核心机制&#xff0c;实现复杂场景下的用户隐私保护。我们将通过完整的权限请求流程和敏感数据处理代码&#xff0c;演示鸿蒙系统如何平衡功能需求与隐私安…...

后端下载限速(redis记录实时并发,bucket4j动态限速)

✅ 使用 Redis 记录 所有用户的实时并发下载数✅ 使用 Bucket4j 实现 全局下载速率限制&#xff08;动态&#xff09;✅ 支持 动态调整限速策略✅ 下载接口安全、稳定、可监控 &#x1f9e9; 整体架构概览 模块功能Redis存储全局并发数和带宽令牌桶状态Bucket4j Redis分布式限…...