中间件 redis安装

devtools/2024/12/22 22:27:28/

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分配器

  1. 安装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
     
  2. 重新编译 首先删除之前已经解压的 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博客


http://www.ppmy.cn/devtools/144495.html

相关文章

深入了解Python模拟负载均衡器:将请求高效分发至多个服务器

深入了解Python模拟负载均衡器:将请求高效分发至多个服务器 负载均衡器是现代分布式系统中至关重要的一环,它在多个服务器间分发请求,从而确保系统的高可用性和性能优化。通过负载均衡,系统能够在处理大量请求时保持稳定性,并且最大程度上利用资源。本文将详细介绍如何使…

【Token】校验、会话技术、登录请求、拦截器【期末实训】实战项目学生和班级管理系统\Day15-后端Web实战(登录认证)\讲义

登录认证 在前面的课程中&#xff0c;我们已经实现了部门管理、员工管理的基本功能&#xff0c;但是大家会发现&#xff0c;我们并没有登录&#xff0c;就直接访问到了Tlias智能学习辅助系统的后台。 这是不安全的&#xff0c;所以我们今天的主题就是登录认证。 最终我们要实现…

如何从零开始搭建公司自动化测试框架

题主的意思&#xff0c;搭建的自动化测试框架要包括API测试&#xff0c;UI测试&#xff0c;APP测试三类。以上三类其实可以简化为两类&#xff0c;那就是&#xff1a; 1&#xff09;接口自动化测试框架搭建 2&#xff09;UI自动化测试框架搭建。 没问题&#xff0c;安排&#x…

如何写一个数字老虎机滚轮

需求描述 写一个数字滚轮&#xff0c;实现类似老虎机的效果&#xff0c;可以指定数字 实现思路 这个数字滚动组件的核心实现思路可以概括为&#xff1a; 视觉原理 每个数字位用一个固定高度的容器&#xff0c;通过 overflow: hidden 只显示一个数字容器内部包含完整的 0-9…

leecode474.一和零

这道题感觉像是01背包问题的进阶&#xff0c;容量有两个维度&#xff0c;一个是m个0&#xff0c;一个是n个1 class Solution { public:int findMaxForm(vector<string>& strs, int m, int n) {vector<vector<int>> dp(m1,vector<int>(n1,0));for(…

基于ceres优化的3d激光雷达开源算法

以下是一些基于CERES优化的开源激光雷达SLAM或相关算法&#xff1a; (1) LOAM (Lidar Odometry And Mapping) 简介: LOAM是一种经典的激光雷达里程计和建图算法&#xff0c;它通过提取特征点&#xff08;角点和平面点&#xff09;&#xff0c;利用ICP&#xff08;Iterative Cl…

Java图片拼接

最近遇到一个挺离谱的功能&#xff0c;某个表单只让上传一张图&#xff0c;多图上传会使导出失败。跟开发沟通后表示&#xff0c;这个问题处理不了。我... 遂自己思考&#xff0c;能否以曲线救国的方式拯救一下&#xff0c;即不伤及代码之根本&#xff0c;又能解决燃眉之急。灵…

【计算机网络2】计算机网络的性能能指标

目录 一 、计算机网络的性能指标 二、具体介绍 1、速 率 2、带 宽 3、吞 吐 量 4、时 延 5、时延带宽积 6、往 返 时 延 7、信道利用率 一 、计算机网络的性能指标 计算机网络的性能指标就是从不同方面度量计算机网络的性能&#xff0c;有如下7个指标&#xff1a; 速…