Redis查找并删除key
redis安装在IP为x.x.x.x的服务器上
redis安装
第一步,安装编译工具及库文件。
命令:yum -y install make zlib zlib-devel gcc-c++ libtool openssl openssl-devel
命令:cd /usr/local/src
wget http://download.redis.io/releases/redis-4.0.10.tar.gz
命令:tar zxvf redis-4.0.10.tar.gz -C /usr/local
第四步,编译安装redis。
命令:cd /usr/local/redis-4.0.10
make
cd /usr/local/redis-4.0.10/src
make install
redis配置
第一步,在/usr/local中新建/redis/etc文件夹,并在将/usr/local/redis-4.0.10文件夹中的conf配置文件复制粘贴到/usr/local/redis/etc。
命令:mkdir -p /usr/local/redis/etc
cp /usr/local/redis-4.0.10/redis.conf /usr/local/redis/etc
第二步,在/usr/local中新建/redis/bin、/redis/db和/redis/logs文件夹,/usr/local/redis-4.0.10/src文件夹中的常用命令复制粘贴到/usr/local/redis/bin。
命令:mkdir -p /usr/local/redis/bin
mkdir -p /usr/local/redis/db
mkdir -p /usr/local/redis/logs
cd /usr/local/redis-4.0.10/src
cp mkreleasdhdr.sh redis-benchmark redis-check-aof redis-check-dump redis-cli redis-server /usr/local/redis/bin
第三步,编辑配置/etc/sysctl.conf文件。
配置sysctl.conf文件的内核参数,否则redis脚本在重启或停止redis时,将会报错,并且不能自动在停止服务前同步数据到磁盘上。
命令:vim /etc/sysctl.conf
在最后一行添加下面代码:
vm.overcommit_memory = 1
# 使设置立即生效
命令:sysctl -p
第四步,redis开启外部访问权限的方法。
编辑配置/usr/local/redis/etc/redis.conf文件,做以下几处修改:
“bind 127.0.0.1”为“bind 0.0.0.0”,“daemonize no”改为“daemonize yes”,“requirepass foobared”改为“requirepass 123456”,“dir ./”改为“dir /usr/local/redis/db”,“logfile ”改为“logfile /usr/local/redis/logs/redis.log”,保存并重启redis。
redis启动、关闭服务
说明:前台启动:redis-server 后台启动:redis-server &
第一步,前台启动redis服务。
命令:/usr/local/redis/bin/redis-server
注意:执行完该命令后,如果Lunix关闭当前会话,则redis服务也随即关闭。正常情况下,启动redis服务需要从后台启动,并且指定启动配置文件。
第二步,后台启动redis服务。
再次启动redis服务,并指定启动服务配置文件。
命令:cd /usr/local/redis/bin
redis-server /usr/local/redis/etc/redis.conf
# 结果第一行最后面显示redis端口
ps -ef | grep redis
# 结果第一行最后面显示redis进程号
netstat -nap | grep 6379
服务端启动成功后,启动redis 客户端,查看端口号。
命令:redis-cli
auth 123456
set [key] [value]
get [key]
exit
netstat -nap | grep 6379
第三步,外部IP地址访问redis。
命令:ip a
redis-cli -h x1.x1.x1.x1 -p 6379
auth "123456"
keys *
set [key] [value]
get [key]
exit
第四步,前台和后台关闭redis服务。
命令:pkill redis-server
/usr/local/redis/bin/redis-cli shutdown
netstat -nap | grep 6379
Redis查找并删除key
第一步,Redis查找key方法。
1)KEYS命令
KEYS命令用于查找符合给定模式的所有key。
# 查找所有以yyyyy:开头的key
命令:KEYS "yyyyy:*"
注意:KEYS命令具有阻塞特性,若匹配的key数量过多,则会占用很多服务器资源,导致Redis性能下降。
2)SCAN命令
为了避免KEYS命令的阻塞特性,Redis提供了SCAN命令。SCAN命令可以逐步遍历数据库中所有的key,每次只返回一小部分数据,以避免占用服务器过多资源。
语法:SCAN cursor [MATCH pattern] [COUNT count]注释:cursor是一个游标,用于记录当前遍历的进度;MATCH和COUNT参数用于指定匹配模式和返回数量。
# 查找所有以yyyyy:开头的key,并每次返回10个数据
命令:SCAN 0 MATCH "yyyyy:*" COUNT 10
注意:对于相对较小的Redis数据库,KEYS命令可能比SCAN命令更加高效。
3)TYPE命令
若想要查找指定类型的key,则可以使用TYPE命令。
语法:TYPE key
# 查找key为yyyyy:123的数据类型
命令:TYPE yyyyy:123
4)EXISTS命令
若只需要判断某个key是否存在,则可以使用EXISTS命令。
语法:EXISTS key
# 判断是否存在key为user:123的数据
命令:EXISTS yyyyy:123
第二步,Redis删除key。
1)单独删除指定的key
命令:redis-cli
auth "123456"
keys *
# [key]即为实际要删除的key
del [key]
exit
2)根据通配符进行批量删除
命令:redis-cli -a 123456 KEYS "yyyyy:*" | xargs redis-cli -a 123456 del
注意:此方法不需要登录客户端。
若结果显示“(error) ERR wrong number of arguments for 'del' command”,则说明命令不存在或者命令参数的个数不对。
解决方法:更改keys值,重新查询得到指定的keys值之后,del即可。
相关文章:
Redis查找并删除key
redis安装在IP为x.x.x.x的服务器上 redis安装 第一步,安装编译工具及库文件。 命令:yum -y install make zlib zlib-devel gcc-c libtool openssl openssl-devel 第二步,下载redis安装包。 命令:cd /usr/local/src wget ht…...
Spring Security认证架构介绍
在之前的Spring Security:总体架构中,我们讲到Spring Security整个架构是通过Bean容器和Servlet容器对过滤器的支持来实现的。我们将从过滤器出发介绍Spring Security的Servlet类型的认证架构。 1.AbstractAuthenticationProcessingFilter AbstractAut…...
提升代码重用性:模板设计模式在实际项目中的应用
在软件开发中,我们经常面临着相似的问题,需要使用相同的解决方法。当我们希望将这种通用的解决方法抽象出来,并在不同的情境中重复使用时,就可以使用设计模式中的模板模式(Template Pattern)。模板模式是一…...
11-k8s-service网络
文章目录 一、网络相关资源介绍二、开启ipvs三、nginx网络示例四、pod之间的访问示例五、service反向代理示例 一、网络相关资源介绍 Servcie介绍 Service是对一组提供相同功能的Pods的抽象,并为它们提供一个统一的入口。借助Service,应用可以方便的实现…...
MyBatisPlus(二十二)代码生成器
使用场景 使用代码生成器,根据数据库表,自动生成对应的 Entity,Mapper,Service,Controller 。 代码 依赖 两个依赖: 生成器依赖模板依赖 <dependency><groupId>com.baomidou</groupId&…...
git报错The project you were looking for could not be found 解决方式
问题描述: 使用git从远程仓库克隆项目到本地的时候。 git clone http://gitlab.com/project/xxxx.git出现这个问题:The project you were looking for could not be found. 原因分析: 你的账号没有项目的权限,你可以在浏览器输…...
“编辑微信小程序与后台数据交互与微信小程序wxs的使用“
引言 在现代移动应用开发中,微信小程序已经成为了一个非常流行和广泛使用的平台。为了使小程序能够展示丰富的内容和实现复杂的功能,与后台数据的交互是至关重要的。同时,微信小程序还提供了一种特殊的脚本语言——wxs,用于增强小…...
从Linux的tty_struct指针获取驱动上下文
背景 问题 前段时间开发一个tty驱动,用途是实现仪器对GPIB消息的接收、处理和上报。对于上报场景,下位机应用将上报内容写入一个驱动创建的tty设备,tty子系统将应用的输入转发给tty驱动,tty驱动将其转换成对SPI从设备࿰…...
PHP WAP餐厅点餐系统mysql数据库web结构apache计算机软件工程网页wamp
一、源码特点 PHP餐厅点餐系统是一套完善的web设计系统,对理解php编程开发语言有帮助,系统具有完整的源代码和数据库,系统主要采用B/S模式开发。 PHP WAP餐厅点餐系统 代码 https://download.csdn.net/download/qq_41221322/88440001 二、…...
智慧公厕改变城市生活,厕所革命标杆应用解决方案
随着城市化进程的加快,公厕作为城市基础设施的重要组成部分,扮演着不可忽视的角色。然而,传统的公厕粗放型管理模式,已经无法满足市民日益增长的需求。为了提升公厕的管理和服务水平,智慧公厕应运而生。 什么是智慧公…...
YOLOv5改进实战 | 更换主干网络Backbone(四)之轻量化模型MobileNetV3
前言 轻量化网络设计是一种针对移动设备等资源受限环境的深度学习模型设计方法。下面是一些常见的轻量化网络设计方法: 网络剪枝:移除神经网络中冗余的连接和参数,以达到模型压缩和加速的目的。分组卷积:将卷积操作分解为若干个较小的卷积操作,并将它们分别作用于输入的不…...
上新啦!请查收云原生虚拟数仓 PieCloudDB 十月动态
PieCloudDB Database 最新动态 PieCloudDB 压缩效率得到提升 为了节省存储空间,降低用户存储费用,PieCloudDB 在压缩率上不断优化,包括: 对 HLL(HyperLogLog)支持游程编码(Run Length Encodi…...
第五章:Python中的集合(上)
Python中的集合 是一组不可重复元素的无序集合。集合通常用于在其中执行成员测试,删除重复项,计算交集、并集和差集等操作。 Python的集合是可迭代对象。具体来说,集合可以通过for循环逐个访问其中的元素。同时,集合还支持一些迭代器相关的方法,例如iter()函数和next()函…...
虚拟机灾备建设中NFS存储直接访问技术应用
NFS(Network File System)是一种网络文件系统,允许不同计算机之间共享文件和目录。在Linux系统中,可以使用NFS协议来访问网络存储。 当新服务器硬盘不足时,旧的服务器硬盘容量大,不拔硬盘的情况下…...
java业务开发常用的配置表及代码
配置表 通过配置表,灵活的配置。 开发中某些经常变更的参数值,加上配置。比如 订单30分钟后失效,需求变更,要改为15分钟,那么直接改配置表就行了,不用发版。 某些关键的容易出错的逻辑,加上一…...
安装Homebrew安装Git(Mac)
使用Homebrew安装Git(Mac) 1 安装Xcode 安装Homebrew之前,需要安装Xcode Comand Line Tools: xcode-select --install 2 安装Homebrew /usr/bin/ruby -e “$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/mas…...
[云原生1.] Docker容器的简单介绍和基本管理
文章目录 1. Docker容器的基本概述1.1 简介1.2 容器的优点1.3 Docker与虚拟机的区别1.4 Docker核心组成1.4.1 镜像1.4.2 容器1.4.3 仓库 1.5 容器在内核中支持2种重要技术1.5.1 linux六大namespace(命名空间) 1.6 Docker的使用场景 2. Docker的部署2.1 前…...
JSR303数据校验
Component //注册bean ConfigurationProperties(prefix "person") Validated //数据校验 public class Person { Email(message"邮箱格式错误") //name必须是邮箱格式 private String name; } 使用数据校验,可以保证数据的正确性!…...
JavaCV + FFmpeg 播放音视频
JavaCV FFmpeg 播放音视频 1、导入JavaCV库1.1 使用ffmpeg必要库1.2 简单FFmpeg命令 待续~~~~ FFmpeg documentation bytedeco/javacv - GitHub 1、导入JavaCV库 gradle下面这种会导入javacv-platform所有包,非常耗时:https://repo.maven.apache.org/…...
万能DIY预约小程序源码系统 上门预约服务小程序搭建 适用于各种预约场景 自由DIY功能模块
在这个快节奏的时代,预约服务已经成为了我们日常生活的一部分。从看病挂号到餐厅预订,从美发美容到家政服务,预约已经深入到了各个领域。然而,传统的预约方式存在着许多不便,如电话预约、在线填写表格等,不…...
WaveTools终极指南:免费解锁鸣潮120帧的完整教程
WaveTools终极指南:免费解锁鸣潮120帧的完整教程 【免费下载链接】WaveTools 🧰鸣潮工具箱 项目地址: https://gitcode.com/gh_mirrors/wa/WaveTools 想要彻底解决《鸣潮》游戏卡顿问题,享受流畅的120帧体验吗?今天我要为你…...
圣女司幼幽-造相Z-Turbo快速部署:5分钟搭建专属牧神记AI画室
圣女司幼幽-造相Z-Turbo快速部署:5分钟搭建专属牧神记AI画室 1. 引言:打造专属角色AI画师 你是否想过拥有一个专门绘制《牧神记》中圣女司幼幽的AI画师?现在通过"圣女司幼幽-造相Z-Turbo"镜像,只需5分钟就能搭建专属的…...
MarkDown时序图进阶:巧用并行、条件与循环构建复杂交互逻辑
1. Markdown时序图的核心价值与应用场景 第一次接触Markdown时序图时,我被它的简洁性惊艳到了。相比传统UML工具繁琐的拖拽操作,用几行文本就能描述复杂的系统交互,这简直就是程序员的福音。在实际项目中,我经常用它来梳理微服务间…...
告别迷茫!手把手教你用Keil uVision5为LPC1759创建第一个完整工程(附UART驱动避坑指南)
从零构建LPC1759工程:Keil uVision5实战指南与UART深度解析 当你第一次拿到LPC1759开发板时,面对Keil uVision5的复杂界面和芯片手册中密密麻麻的寄存器描述,是否感到无从下手?作为ARM Cortex-M3家族中的经典型号,LPC1…...
GD32F303读保护解除实操:从J-Link命令行到一键批处理的全攻略
GD32F303读保护解除实战手册:从底层原理到自动化脚本全解析 当你的GD32F303突然拒绝所有烧录请求,调试器返回神秘的"Flash write failed"错误时,很可能遇到了读保护机制触发的"软锁死"状态。这种设计本为保护知识产权&am…...
Python FastAPI 并发请求调度机制
Python FastAPI 并发请求调度机制解析 在当今高并发的互联网应用中,如何高效处理大量请求成为开发者关注的焦点。Python FastAPI凭借其异步特性和高性能,成为构建现代API的热门选择。其并发请求调度机制尤其值得深入探讨,它能显著提升应用的…...
Ray Serve 模型推理部署(上)
第六章:Ray Serve 模型推理部署(上) 6.1 部署架构与核心概念 Ray Serve 是 Ray 生态中专门用于模型推理和服务部署的库。它提供了可扩展、可编程的模型服务框架,支持实时推理和批量推理两种模式。Ray Serve 的设计目标是让开发者能够轻松地将训练好的模型部署到生产环境,同…...
RWKV-7 (1.5B World)镜像部署:腾讯云TI-ONE平台GPU容器配置
RWKV-7 (1.5B World)镜像部署:腾讯云TI-ONE平台GPU容器配置 1. 项目概述 RWKV-7 (1.5B World)是一款专为单卡GPU优化的轻量级对话模型,基于RWKV架构开发。这个1.5B参数的模型虽然体积小巧,却具备出色的多语言理解能力,特别适合在…...
ARM CoreLink NIC-400配置避坑指南:用AMBA Designer搞定AXI/AHB互连拓扑
ARM CoreLink NIC-400配置实战:用AMBA Designer构建高效AXI/AHB互连拓扑 当你在SoC设计中第一次打开AMBA Designer工具面对NIC-400的海量配置选项时,是否感到无从下手?作为ARM第四代互连IP,NIC-400的灵活性既是其最大优势…...
如何掌握Python元编程与装饰器:从入门到精通的终极指南
如何掌握Python元编程与装饰器:从入门到精通的终极指南 【免费下载链接】python-guide Python best practices guidebook, written for humans. 项目地址: https://gitcode.com/gh_mirrors/py/python-guide Python作为一门灵活且强大的编程语言,…...
