中间件 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分配器

  1. 安装jemalloc

    复制代码
    wget https://github.com/jemalloc/jemalloc/releases/download/5.0.1/jemalloc-5.0.1.tar.bz2
    bash 复制代码
    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后面的路径根据自己安装路径修改

bash 复制代码
[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命令

bash 复制代码
\# 重载服务
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博客

相关推荐
nbplus_00742 分钟前
Redis Set操作
数据库·redis·bootstrap
weisian1511 小时前
Redis篇-11--数据结构篇3--字符串内存模型(简单动态字符串SDS)
数据结构·数据库·redis
.生产的驴1 小时前
Dcoker Redis哨兵模式集群介绍与搭建 故障转移 分布式 Java客户端连接
java·大数据·数据库·redis·分布式·mysql·缓存
小马爱打代码1 小时前
SpringBoot集成Canal实现MySQL实时同步数据到Redis
spring boot·redis·mysql
enjoy嚣士4 小时前
docker搭建redis集群
redis·docker
往日情怀酿做酒 V17639296384 小时前
Django基础之中间件
python·中间件·django
BenChuat5 小时前
HBase、Hive、Redis 和 MongoDB的对比
hive·redis·mongodb·hbase
陈沧夜5 小时前
【openssl】 version `OPENSSL_3.0.3‘ not found 问题
后端·中间件
六千江山5 小时前
Redis bitmaps 使用
java·数据库·redis·缓存