中间件 redis安装
redis官网地址:Redis - The Real-time Data Platform
环境
CentOS Linux release 7.9.2009 (Core)
java version "17.0.12" 2024-07-16 LTS
1、通过压缩包安装redis
1,远程下载redis压缩包,或去官网下载:Downloads - Redis
wget https://download.redis.io/releases/redis-7.4.1.tar.gz

2,解压文件
tar -zxvf redis-7.4.1.tar.gz
3、进入到 redis-7.4.1目录中
cd redis-7.4.1
4、编译Redis
编译
由于redis是c语言编写的,所以我们需要先安装gcc,安装的命令如下:
yum install gcc-c++
make
编译,报错
which: no python3 in (/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/home/tools/jdk17/bin:/root/bin) make[1]: 进入目录“/home/tools/redis/redis-7.4.1/src”CC threads_mngr.o In file included from server.h:58:0,from threads_mngr.c:15: zmalloc.h:29:31: 致命错误:jemalloc/jemalloc.h:没有那个文件或目录#include <jemalloc/jemalloc.h>
解决方案:
1、make 时指定分配器为libc
make MALLOC=libc
2、安装jemalloc分配器
-
安装jemalloc
wget https://github.com/jemalloc/jemalloc/releases/download/5.0.1/jemalloc-5.0.1.tar.bz2
yum install bzip2 tar -jxvf jemalloc-5.0.1.tar.bz2 cd jemalloc-5.0.1 yum install autogen autoconf ./autogen.sh make -j2 make install ldconfig cd ../ rm -rf jemalloc-5.0.1 jemalloc-5.0.1.tar.bz2 -
重新编译 首先删除之前已经解压的 redis 包,重新解压。然后在执行 make 和 make install 即可。
原文链接:redis 编译报致命错误:jemalloc/jemalloc.h:没有那个文件或目录_jemalloc.h 没有那个文件或目录-CSDN博客
5、指定目录安装
make install PREFIX=/home/tools/redis/install-redis (PREFIX也可以不加)
6、启动redis
进入安装目录 cd install-redis /或者src
cd install-redis/src
#启动redis ./redis-server # 启动redis服务端,指定配置文件的位置 ./redis-server /home/tools/redis/redis-7.4.1--有命令参考readme.md% ./redis-server --port 9999 --replicaof 127.0.0.1 6379% ./redis-server /etc/redis/6379.conf --loglevel debug #查看Redis运行情况 ps -ef|grep redis #关闭命令 redis-cli shutdown 或者 kill redis进程的pid #查看是否安装成功:#查看redis 版本./redis-cli -v#客户端启动redis./redis-cli [root@localhost src]# ./redis-cli 127.0.0.1:6379> auth 123456 OK 127.0.0.1:6379> set a 1 OK 127.0.0.1:6379> shutdown
7、配置redis.conf
vim /home/tools/redis/redis-7.4.1
#daemonize no 改为yes,开启后台运行,默认是前台运行 daemonize yes #把这一行注释,监听所有IP #bind 127.0.0.1 #protected-mode yes 如果改为no,则是关闭保护模式,这种模式下不能配置系统服务,建议还是开启 protected-mode yes #requirpass,保护模式开启的时候要配置密码或者bind ip requirepass 123456 #修改本参数,指定数据目录 dir /home/tools/redis/data #修改本参数,指定日志目录 logfile /home/tools/redis/logs/redis_6379.log #服务端口 port 6379
8、开放防火墙端口
firewall-cmd --zone=public --add-port=6379/tcp --permanent #刷新防火墙firewall-cmd --reload # 查看 6379 是否开放成功firewall-cmd --zone=public --query-port=6379/tcp
9、将redis 服务交给 systemd 管理
1、编写 redis.service
cd /etc/systemd/system vim redis.service
注意:ExecStart后面的路径根据自己安装路径修改
[Unit]
Description=Redis
After=network.target[Service]
Type=forking
PIDFile=/run/redis_6379.pid
ExecStart=/home/tools/redis/redis-7.4.1/src/redis-server /home/tools/redis/redis-7.4.1/redis.conf
ExecReload=/bin/kill -s HUP $MAINPID
Restart=always
ExecStop=/bin/kill -s QUIT $MAINPID
PrivateTmp=true[Install]
WantedBy=multi-user.target
2、保存退出 eq
3、刷新服务配置
systemctl daemon-reload
4、设置开机自启
systemctl enable redis
Created symlink from /etc/systemd/system/multi-user.target.wants/redis.service to /etc/systemd/system/redis.service.
5、启动redis
systemctl start redis
6、查看状态redis服务状态
systemctl status redis

7、使用systemctl命令
\# 重载服务
systemctl daemon-reload
\# 开机自启
systemctl enable redis
\# 启动
systemctl start redis
\# 重启
systemctl restart redis
\# 停止
systemctl stop redis
\# 查看状态
systemctl status redis\# 关闭开机启动
systemctl disable redis
2、使用Redis Desktop Manager连接Redis
1、下载安装redis desktop manager: Github: Release 2022.5 · lework/RedisDesktopManager-Windows · GitHub
2、使用

Alpha、Beta、Release、RC、GA等各版本称号的区别
Alpha、Beta、Release、RC、GA等各版本称号的区别_tomcat 11(alpha)-CSDN博客
参考文章:Linux下安装Redis(超详细教程)_linux安装redis-CSDN博客
最完整版Linux安装Redis(保姆教程)-CSDN博客
centos7 安装redis 6.0.3 - 春天的风情 - 博客园
window安装redis:
Redis Desktop Manager安装及简单教程_redisdesktopmanager-CSDN博客
相关文章:
中间件 redis安装
redis官网地址:Redis - The Real-time Data Platform 环境 CentOS Linux release 7.9.2009 (Core) java version "17.0.12" 2024-07-16 LTS 1、通过压缩包安装redis 1,远程下载redis压缩包,或去官网下载:Downloads …...
[java] 简单的熔断器scala语言案例
failureRateInterval时间内如果addEx(错误)达到 maxFailuresPerInterval 次数,则fused方法返回true,表示触发熔断,进入冷却期coolingInterval,冷却期内fused方法返回true,冷却期过后进入下一个错误统计周期。 scala语言完成 imp…...
【java】序列化的种类和使用场景
文章目录 序列化概述什么是序列化?序列化的作用 Java内置序列化java.io.Serializable接口使用ObjectOutputStream和ObjectInputStream优缺点分析 自定义序列化实现Externalizable接口自定义序列化方法适用场景 第三方序列化框架KryoProtobuf (Google Protocol Buffe…...
Qt5与Qt6中的高DPI缩放属性解析
在Qt5中,高DPI缩放默认是禁用的。为了启用它,开发者需要设置Qt::AA_EnableHighDpiScaling应用程序属性。然而,在Qt6中,高DPI缩放默认是启用的,并且不能被禁用。这种变化使得开发者在处理高分辨率屏幕时更加方便&#x…...
Mac使用总结
Mac 常用快捷键 复制:Cmdc粘贴:Cmdv只粘贴文档: ShiftCmdv行首: Cmd<行尾:Cmd>鼠标处选中到行首:ShiftCmd<鼠标处选中到行尾:ShiftCmd>选中整行:上面两个命令组合鼠标处…...
【日期规则】EXCEl 自定义日期匹配规则,学习基础知识,自由匹配场景
excel 新建规则工具路径:开始 - 条件格式 - 新建规则 B$1TODAY() 注意:新建规则后,要点击 条件格式 - 管理规则 - 应用于 要选择规则应用范围 使用场景: excel 做进度管理当中可以查看当天的情况;每周的学习规划 或…...
苹果电脑可以安装windows操作系统吗?Mac OS X/OS X/macOS傻傻分不清?macOS系统的Java支持?什么是macOS的五大API法王?
苹果电脑可以安装windows操作系统吗? 先抛开虚拟机安装,苹果电脑可以安装Windows操作系统。苹果公司提供了一个名为Boot Camp的软件,它允许用户在Mac电脑上安装Windows操作系统。通过Boot Camp,用户可以在启动电脑时选择是要进入macOS还是Wi…...
芋道SpringBoot配置Maven、创建SpringBoot项目、创建Web接口、读取配置信息
🌹作者主页:青花锁 🌹简介:Java领域优质创作者🏆、Java微服务架构公号作者😄 🌹简历模板、学习资料、面试题库、技术互助 🌹文末获取联系方式 📝 系列文章目录 第一章 芋…...
物理机内网穿透
前言: 本文主要讲述如何使用内网穿透以及其安全性。 将带领大家在公网上搭建几个常用靶场。 一,什么是内网穿透。 大多数情况下,我们的个人电脑都处于内网,即没有可公开访问的独立 IP 地址,因此其他内网用户找不到…...
Vue 3: 通过图片链接获取图片颜色,间接设置背景颜色
在现代Web开发中,动态获取和处理图像数据是一个常见的需求。例如,你可能希望自动提取一张图片的主色调,以便根据这些颜色进行UI主题调整或其他视觉效果的处理。本文将介绍如何在Vue 3项目中,通过一个图片链接获取图片的颜色信息。…...
opencv-python的简单练习
题目1.读取一张彩色图像并将其转换为灰度图。 import cv2 # 读取图片文件 img cv2.imread(./1.png)# 将原图灰度化 img_gray cv2.cvtColor(img,cv2.COLOR_BGR2GRAY)# 输出图片 cv2.imshow(img,img) cv2.imshow(img_g,img_gray) # 进行阻塞 cv2.waitKey(0) 题目2:…...
如何使用生成式AI实现跨领域内容生成
文章目录 引言生成式AI的基本概念定义与分类技术发展现状 跨领域内容生成的技术实现数据准备模型选择与设计训练策略 应用案例分析教育培训新闻媒体文化创意产业 实践建议确定明确的目标构建合适的团队持续迭代改进遵守法律法规 结论 引言 在当今数字化时代,信息的…...
【Linux】socket编程1
socket编程1 1. 网络字节序2. ip地址转换函数3. sockaddr数据结构 1. 网络字节序 多字节数据有大端和小端之分,网络数据流采用大端字节序,如果主机采用的是小端字节序,那么需要转换。 大端:低地址存高字节,高地址存低…...
Linux文件属性 --- 七种文件类型---文件.目录、软硬链接、字符设备文件
目录 七种文件类型 1、普通文件和目录 2、链接文件 2.1硬链接 2.2软链接 3、字符设备文件 一、七种文件类型 Linux的文件属性中一共有以下七种类型 : 符号类型含义解释-普通文件纯文本文件(ASCII)和二进制文件(binaryÿ…...
Tree-of-Counterfactual Prompting for Zero-Shot Stance Detection
论文地址:Tree-of-Counterfactual Prompting for Zero-Shot Stance Detection - ACL Anthologyhttps://aclanthology.org/2024.acl-long.49/ 1. 概述 立场检测被定义为对文本中立场态度的自动推断。根据 Biber 和 Finegan (1988) 的定义,立场包含两个主…...
NextJs 路由管理
NextJs 路由管理 Defining Routes 1. Creating Routes 2. Creating UI export default function Page() {return <h1>Hello, Next.js!</h1> }Route Groups 路由组 1. 在不影响 URL 路径的情况下组织路由 要在不影响 URL 的情况下组织路由,请创建一…...
hive 小文件分析
1、获取fsimage文件: hdfs dfsadmin -fetchImage /data/xy/ 2、从二进制文件解析: hdfs oiv -i /data/xy/fsimage_0000000019891608958 -t /data/xy/tmpdir -o /data/xy/out -p Delimited -delimiter “,” 3、创建hive表 create database if not exists…...
【JavaWeb后端学习笔记】WebSocket通信
WebSocket是基于TCP的一种新的网络协议。它实现了浏览器与服务器全双工通信——浏览器和服务器只需要完成一次握手,两者之间就可以创建持久性的连接,并进行双向数据传输。 主要应用场景:视频弹幕、网页聊天、体育实况更新、股票基金报价实时…...
搭建springmvc项目
什么是springmvc MVC它是一种设计理念。把程序按照指定的结构来划分: Model模型 View视图 Controller控制层 springmvc框架是spring框架的一个分支。它是按照mvc架构思想设计的一款框架。 springmvc的主要作用: 接收浏览器的请求数据,对数据进行处理,…...
Springboot3.x配置类(Configuration)和单元测试
配置类在Spring Boot框架中扮演着关键角色,它使开发者能够利用Java代码定义Bean、设定属性及调整其他Spring相关设置,取代了早期版本中依赖的XML配置文件。 集中化管理:借助Configuration注解,Spring Boot让用户能在一个或几个配…...
vscode里如何用git
打开vs终端执行如下: 1 初始化 Git 仓库(如果尚未初始化) git init 2 添加文件到 Git 仓库 git add . 3 使用 git commit 命令来提交你的更改。确保在提交时加上一个有用的消息。 git commit -m "备注信息" 4 …...
超短脉冲激光自聚焦效应
前言与目录 强激光引起自聚焦效应机理 超短脉冲激光在脆性材料内部加工时引起的自聚焦效应,这是一种非线性光学现象,主要涉及光学克尔效应和材料的非线性光学特性。 自聚焦效应可以产生局部的强光场,对材料产生非线性响应,可能…...
Xshell远程连接Kali(默认 | 私钥)Note版
前言:xshell远程连接,私钥连接和常规默认连接 任务一 开启ssh服务 service ssh status //查看ssh服务状态 service ssh start //开启ssh服务 update-rc.d ssh enable //开启自启动ssh服务 任务二 修改配置文件 vi /etc/ssh/ssh_config //第一…...
vue3 字体颜色设置的多种方式
在Vue 3中设置字体颜色可以通过多种方式实现,这取决于你是想在组件内部直接设置,还是在CSS/SCSS/LESS等样式文件中定义。以下是几种常见的方法: 1. 内联样式 你可以直接在模板中使用style绑定来设置字体颜色。 <template><div :s…...
分布式增量爬虫实现方案
之前我们在讨论的是分布式爬虫如何实现增量爬取。增量爬虫的目标是只爬取新产生或发生变化的页面,避免重复抓取,以节省资源和时间。 在分布式环境下,增量爬虫的实现需要考虑多个爬虫节点之间的协调和去重。 另一种思路:将增量判…...
OPENCV形态学基础之二腐蚀
一.腐蚀的原理 (图1) 数学表达式:dst(x,y) erode(src(x,y)) min(x,y)src(xx,yy) 腐蚀也是图像形态学的基本功能之一,腐蚀跟膨胀属于反向操作,膨胀是把图像图像变大,而腐蚀就是把图像变小。腐蚀后的图像变小变暗淡。 腐蚀…...
Java求职者面试指南:计算机基础与源码原理深度解析
Java求职者面试指南:计算机基础与源码原理深度解析 第一轮提问:基础概念问题 1. 请解释什么是进程和线程的区别? 面试官:进程是程序的一次执行过程,是系统进行资源分配和调度的基本单位;而线程是进程中的…...
解决:Android studio 编译后报错\app\src\main\cpp\CMakeLists.txt‘ to exist
现象: android studio报错: [CXX1409] D:\GitLab\xxxxx\app.cxx\Debug\3f3w4y1i\arm64-v8a\android_gradle_build.json : expected buildFiles file ‘D:\GitLab\xxxxx\app\src\main\cpp\CMakeLists.txt’ to exist 解决: 不要动CMakeLists.…...
[论文阅读]TrustRAG: Enhancing Robustness and Trustworthiness in RAG
TrustRAG: Enhancing Robustness and Trustworthiness in RAG [2501.00879] TrustRAG: Enhancing Robustness and Trustworthiness in Retrieval-Augmented Generation 代码:HuichiZhou/TrustRAG: Code for "TrustRAG: Enhancing Robustness and Trustworthin…...
comfyui 工作流中 图生视频 如何增加视频的长度到5秒
comfyUI 工作流怎么可以生成更长的视频。除了硬件显存要求之外还有别的方法吗? 在ComfyUI中实现图生视频并延长到5秒,需要结合多个扩展和技巧。以下是完整解决方案: 核心工作流配置(24fps下5秒120帧) #mermaid-svg-yP…...
