Redis 源码安装

news2024/9/27 6:48:36

目录

1 Redis 的获取

2 Redis 部署

2.1 下载并解压

2.2 Makerfile 文件

2.3 安装所需要编译所需要的包 

2.4 开始源码编译 

2.5 utils 下的 install_server.sh 脚本文件

2.5 运行脚本进行安装 

3 systemd 管理

3.1 编写Redis systemd 服务脚本

3.2 重新加载 systemd 系统

3.3 设置后台常驻

3.4 启动 redis

3.5 Redis 实现不同功能文件的介绍


1 Redis 的获取

Redis 源码包获取icon-default.png?t=N7T8https://redis.io/docs/latest/operate/oss_and_stack/install/install-redis/install-redis-from-source/

2 Redis 部署

2.1 下载并解压

系统:

Rocky Linux 9.4

[root@node-1 src]# wget https://download.redis.io/redis-stable.tar.gz
[root@node-1 src]# tar xzf redis-stable.tar.gz 
[root@node-1 src]# cd redis-stable/
[root@node-1 redis-stable]# ls
00-RELEASENOTES     deps         MANIFESTO               runtest            SECURITY.md    TLS.md
BUGS                INSTALL      README.md               runtest-cluster    sentinel.conf  utils
CODE_OF_CONDUCT.md  LICENSE.txt  redis.conf              runtest-moduleapi  src
CONTRIBUTING.md     Makefile     REDISCONTRIBUTIONS.txt  runtest-sentinel   tests

2.2 Makerfile 文件

在解压包里 有Makerfile 说明可以直接make编译  

2.3 安装所需要编译所需要的包 

# 安装所需要的环境
[root@node-1 redis-stable]# dnf install make gcc initscripts -y

2.4 开始源码编译 

[root@node-1 redis-stable]# make && make install
[root@node-1 utils]# pwd
/usr/local/src/redis-stable/utils

[root@node-1 utils]# ls
build-static-symbols.tcl   generate-module-api-doc.rb  redis_init_script         speed-regression.tcl
cluster_fail_time.tcl      gen-test-certs.sh           redis_init_script.tpl     srandmember
corrupt_rdb.c              graphs                      redis-sha1.rb             systemd-redis_multiple_servers@.service
create-cluster             hyperloglog                 releasetools              systemd-redis_server.service
generate-command-code.py   install_server.sh           reply_schema_linter.js    tracking_collisions.c
generate-commands-json.py  lru                         req-res-log-validator.py  whatisdoing.sh
generate-fmtargs.py        redis-copy.rb               req-res-validator

在 Redis 安装源代码目录下,有一些常用的文件和目录:

  • src: 存放 Redis 的 C 语言源代码。
  • redis.conf: Redis 服务的默认配置文件,可以用来修改 Redis 服务的配置。
  • sentinel.conf: Redis Sentinel 的配置文件,可以用来配置 Redis Sentinel。
  • runtestruntest-clusterruntest-moduleapi: 测试脚本,可以用来测试 Redis 的功能是否正常。
  • utils: 工具目录,存放一些实用工具,比如 redis-check-dump 可以检查 RDB 文件是否损坏等。
  • Makefile: 构建脚本,可以用来编译 Redis。
  • LICENSE.txt: 许可证文件,说明 Redis 的开源协议。
  • README.md: 说明文档,介绍了 Redis 的安装和使用方法。
  • tests: 测试目录,存放 Redis 的单元测试。

2.5 utils 下的 install_server.sh 脚本文件

install_server.sh 是一个脚本文件,它可以用来设置 Redis 服务的基本配置,例如启动 Redis 服务、创建配置文件等。运行该脚本后,根据提示来完成 Redis 服务器的安装过程。

由于使用的是Rocky Linux 9 使用的系统服务为systemd ,需要将脚本检查给注释

[root@node-1 utils]# vim /usr/local/src/redis-stable/utils/install_server.sh

找到以下几行将他注释 

2.5 运行脚本进行安装 

[root@node-1 utils]# ./install_server.sh 
Welcome to the redis service installer
This script will help you easily set up a running redis server

Please select the redis port for this instance: [6379] 
Selecting default: 6379
Please select the redis config file name [/etc/redis/6379.conf] /etc/redis/redis.conf
Please select the redis log file name [/var/log/redis_6379.log]               
Selected default - /var/log/redis_6379.log
Please select the data directory for this instance [/var/lib/redis/6379] 
Selected default - /var/lib/redis/6379
Please select the redis executable path [/usr/local/bin/redis-server] 
Selected config:
Port           : 6379
Config file    : /etc/redis/redis.conf    # 配置文件
Log file       : /var/log/redis_6379.log  # 日志文件目录
Data dir       : /var/lib/redis/6379      # 数据文件目录
Executable     : /usr/local/bin/redis-server    # 启动程序
Cli Executable : /usr/local/bin/redis-cli
Is this ok? Then press ENTER to go on or Ctrl-C to abort.
Copied /tmp/6379.conf => /etc/init.d/redis_6379
Installing service...
Successfully added to chkconfig!
Successfully added to runlevels 345!
Starting Redis server...
Installation successful!

3 systemd 管理

3.1 编写Redis systemd 服务脚本

[root@node-1 utils]# vim /usr/lib/systemd/system/redis.service
[Unit]
# 服务描述
Description=Redis Server Manager  
# 服务类别
After=network.target               

[Service]
# 后台运行的形式
Type=forking    
# 服务命令
ExecStart=/usr/local/bin/redis-server  /etc/redis/redis.conf
# 给服务分配独立的临时空间
PrivateTmp=true                    

[Install]
# 设置为多用户、系统运行级别为3
WantedBy=multi-user.target  

3.2 重新加载 systemd 系统

[root@node-1 utils]# systemctl daemon-reload 

3.3 设置后台常驻

将此参数改为yes,允许后台启动

3.4 启动redis

[root@node-1 utils]# systemctl start redis
[root@node-1 utils]# redis-cli 
127.0.0.1:6379> exit

3.5 Redis实现不同功能文件的介绍

[root@node-1 utils]# ll /usr/local/bin/
总用量 29416
-rwxr-xr-x. 1 root root  6365976  8月 26 15:41 redis-benchmark
lrwxrwxrwx. 1 root root       12  8月 26 15:41 redis-check-aof -> redis-server
lrwxrwxrwx. 1 root root       12  8月 26 15:41 redis-check-rdb -> redis-server
-rwxr-xr-x. 1 root root  7207776  8月 26 15:41 redis-cli
lrwxrwxrwx. 1 root root       12  8月 26 15:41 redis-sentinel -> redis-server
-rwxr-xr-x. 1 root root 16540664  8月 26 15:41 redis-server
- redis-benchmark:性能测试工具,可以在自己电脑上运行来查看性能
- redis-check-aof:修复有问题的AOF文件
- redis-check-rdb:持久化RDB文件检测,当RDB文件存在问题时,可以使用该工具进行检测与恢复
- ==redis-cli:客户端启动脚本==
- redis-sentinel:哨兵启动脚本
- ==redis-server: 服务端启动脚本==

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2077397.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Apache CloudStack Official Document 翻译节选(九)

关于 Apache CloudStack 的 最佳实践 (三) 配置云外的 防火墙与交换机 对Cisco VNMC(Cisco Virtual Network Management Center)设备集成云外的客户机网路防火墙: 思科虚拟网络管理中心为思科网络虚拟服务提供了中心…

考试:计算机网络(01)

网络功能和分类 计算机网络是计算机技术与通信技术相结合的产物,它实现了远程通信、远程信息处理和资源共享。 计算机网络的功能:数据通信、资源共享、管理集中化、实现分布式处理、负载均衡。 网络性能指标:速率、带宽(频带宽度或传送线路…

我的新书《Android系统多媒体进阶实战》正式发售

我的新书要正式发售了,把链接贴在下面,感兴趣的朋友可以支持下。 ❶发售平台:当当,京东,抖音北航社平台,小红书,b站 ❷目前当当和京东已开启预售 ❸当当网 https://u.dangdang.com/KIDHJ ❹…

机器人语音聊天绕坑

为了给机器人添加语音,网上淘了一块离线语音芯片,用过之后就有些后悔了。离线语音定制性比较差,有150句限制,而且与大模型接驳需要一块额外的esp8266或者esp32。如果使用了esp32,事实上可以自己制作离线语音&#xff0…

【多线程】深入剖析线程安全问题

💐个人主页:初晴~ 📚相关专栏:多线程 / javaEE初阶 前言 线程安全问题是在多线程学习中一个十分重要的话题。多个线程并发执行就容易产生许多冲突与问题,如何协调好每个线程的执行,让多线程编程“多而不乱…

图神经网络实战(19)——异构图神经网络

图神经网络实战(19)——异构图神经网络 0. 前言1. 异构图1.1 异构图基本概念1.2 构建异构图数据集 2. 将同构图神经网络转换为异构图神经网络2.1 数据集介绍2.2 同构图注意力网络2.3 异构图神经网络 小结系列链接 0. 前言 我们已经学习了如何生成包含不…

4、Unity【基础】画线功能Linerenderer、物理系统Physics

文章目录 画线功能Linerenderer1、LineRenderer是什么2、LineRender参数相关3、LineRender代码相关思考1 请写一个方法,传入一个中心点,传入一个半径,用LineRender画个圆出来思考2 在Game窗口长按鼠标用LineRender画出鼠标移动的轨迹 核心系统…

Android studio设置国内镜像代理(HTTP Proxy)教程详解

前些天发现了一个蛮有意思的人工智能学习网站,8个字形容一下"通俗易懂,风趣幽默",感觉非常有意思,忍不住分享一下给大家。 👉点击跳转到教程 1、Android Studio是在谷歌的服务器上,初次安装Android Studio时下载SDK可能…

6Valley 14.2 免授权php – 跨境电商在线商城 – 完整的电子商务APP端和web端程序

6Valley 14.2 Nulled – 多供应商电子商务 – 完整的电子商务移动应用程序、Web、卖家和管理面板 后台可自定义收款,和翻译多国语言,中文需要自己对比翻译!一般用不到中文。毕竟是跨境电商平台 带商家即时通讯,全套带文档和APP双…

Spring(2)

目录 一、使用注解开发 1.1 主要注解 1.2 衍生注解 1.3 xml与注解 二、使用Java的方式配置Spring 三、代理模式 3.1 静态代理 3.1.1 角色分析 3.1.2 代码步骤 3.1.3 优点 3.1.4 缺点 3.2 动态代理 3.2.1 代码步骤 四、AOP 4.1 使用Spring的API接口 4.2 使用自定义…

云计算实训36——mysql镜像管理、同步容器和宿主机时间、在容器外执行容器内命令、容器的ip地址不稳定问题、基础镜像的制作、镜像应用

一、线上考试系统的数据虚拟化技术部署 1.部署前段服务器 步骤一:将资源上传到服务器 将dist.zip上传给服务器 下载unzip的包 yum -y install unzip 解压 unzip dist.zip 步骤二:创建基础容器在服务器上 启动服务 systemctl start docker.servic…

LVS部署——DR集群

目录 一、LVS—DR工作原理 二、LVS-DR数据流向 三、LVS-DR模式特点和优缺点 3.1、特点 3.2、优缺点 四、LVS-DR中的ARP问题 4.1、IP地址冲突 4.2、第二次访问请求失败 五、部署LVS-DR集群 5.1、实验准备 5.2、配置负载调度器(192.168.20.15) …

SeaweedFS 分布式存储安装weed

下载Single Binary weed Start 官方推荐 https://github.com/seaweedfs/seaweedfs 下载 https://github.com/seaweedfs/seaweedfs/releases解压 single binary file weed or weed.exe. wget https://github.com/seaweedfs/seaweedfs/releases/download/3.72/darwin_amd64.…

【前端面试基础】计算机网络、浏览器、操作系统

计算机网络 一、网络协议与模型 什么是协议? 协议是指计算机系统中完成特定任务所必需的规则和约定,特别是数据传输和交换的规则和约定。OSI和TCP/IP是什么? OSI(开放式系统互连参考模型)是一种网络架构模型&#xf…

C#复习之索引器

知识点一:索引器基本概念 基本概念: 让对象可以像数组一样通过索引访问其中元素,使程序看起来更直观,更容易编写 知识点二:索引器语法 //value代表传入的值 知识点三:索引器的使用 知识点四&#xff1a…

大容量永磁同步电机转速电流双环PID控制MATLAB仿真模型

电气仔推送 模型简介 同步电机采用转速环PI控制,电流环PI控制,在电机转速300r/min,输出转矩为40000N.m时,电机的输出功率为1.25MW。模型各部分完整,电流输出正弦度好,谐波含量低。赠送建模说明文件&#…

PAT (Basic Level) Practice (中文)

1003 我要通过 通过观察不难发现在一个规律:P之前A的个数*P和T之间A的个数等于T之后A的个数答案才正确 总结一下如何才能答案正确? 1.必须只能有P,A,T这三种字符 2.P和T之间必须要有A 3.P之前A的个数*P和T之间A的个数等于T之…

【HTML】模拟消息折叠效果【附源代码】

文件结构 收起效果 展开效果 HTML部分 HTML部分定义了网页的结构和内容。 <!DOCTYPE html> 声明了文档类型和HTML版本。<html> 元素是所有其他HTML元素的父元素。<head> 元素包含了文档的元数据&#xff0c;如字符集、视口设置、标题和链接的样式表。<b…

高效又经济,乔拓云助力,快速上线功能全面的小程序解决方案

乔拓云模板化小程序开发费用 在当今数字化时代&#xff0c;小程序成为企业拓展市场的新利器。乔拓云平台提供模板化开发方案&#xff0c;让您的小程序能同时覆盖微信与百度&#xff0c;迅速触达更多用户。 选择乔拓云模板&#xff0c;无需从零开始设计&#xff0c;直接复用精美…

ssrf+redis未授权访问漏洞复现

目录 靶场搭建 报错问题解决 组合利用 使用goherus生成payload 靶场搭建 首先我们进入ubutuo拉取靶场 docker run -d -p 8765:80 8023/pikachu-expect:latest 报错问题解决 如果出现docker报错&#xff0c;靶场一直拉取不下来 解决办法&#xff1a;配置镜像加速器 vim /et…