一键脚本部署单机redis

news2024/10/22 15:25:07

这里写目录标题

  • 背景
  • 步骤
  • 总结

背景

现在有要求,将所有安装步骤可复用化 。sh脚本即可完成如上要求,减少人安装带来的不确定性因素。
在这里插入图片描述

需要安装包的可以加我微信。

步骤

在/root 目录下创建一个文件我们给他命名为 autoRedis.sh

vi autoRedis.sh

然后摁i进入编辑状态,写入如下文本

#!/bin/bash



# 检查是否是root用户
if [ $(id -u) != "0" ]; then
    echo "Error: You must be root to run this script, please use root to install"
    exit 1
else
    echo "Script is running as root..."
fi

install_redis(){
    echo "Starting the installation of Redis..."
    # 单节点建立目录
    echo "Creating directories..."
    cd /usr/local
    mkdir -p tools
    cd tools
    mkdir -p redis-build
    cd /usr/local/tools/redis-build/
    echo "Moving Redis tarball to the build directory..."
    mv /root/redis-4.0.11.tar.gz /usr/local/tools/redis-build/
    echo "Extracting Redis tarball..."
    tar -zxvf redis-4.0.11.tar.gz

    # 编译安装redis
    echo "Compiling Redis..."
    cd redis-4.0.11
    make MALLOC=libc
    cd src
    echo "Installing Redis..."
    make install PREFIX=/usr/local/tools/redis/

    # 创建redis节点目录
    echo "Creating Redis node directories..."
    cd /usr/local/tools/redis
    mkdir -p node/{conf,db,log}

    # 复制配置文件
    echo "Copying Redis configuration file..."
    cd node/conf
    cp /usr/local/tools/redis-build/redis-4.0.11/redis.conf ./

    # 修改配置文件
    echo "Configuring Redis..."
     sed -i 's/bind 127.0.0.1/#bind 127.0.0.1/g' /usr/local/tools/redis/node/conf/redis.conf
        sed -i 's/protected-mode yes/protected-mode no/g' /usr/local/tools/redis/node/conf/redis.conf
        sed -i 's/daemonize no/daemonize yes/g' /usr/local/tools/redis/node/conf/redis.conf
        sed -i 's|logfile ""|logfile /usr/local/tools/redis/node/log/redis.log|g' /usr/local/tools/redis/node/conf/redis.conf
        sed -i 's|dir ./|dir /usr/local/tools/redis/node/db|g' /usr/local/tools/redis/node/conf/redis.conf
        sed -i 's|pidfile /var/run/redis_6379.pid|pidfile /usr/local/tools/redis/node/redis.pid|g' /usr/local/tools/redis/node/conf/redis.conf


 

    # 启动redis服务
    echo "Starting Redis server..."
    /usr/local/tools/redis/bin/redis-server /usr/local/tools/redis/node/conf/redis.conf
    echo "Redis server started successfully."
}

# 调用函数部署redis
install_redis

然后保存退出

提升文件权限 并且执行脚本

chmod  777   autoRedis.sh


./autoRedis.sh

如果你是云服务器请记得开端口,然后使用medis连接

在这里插入图片描述

总结

任何东西都可以按照面向对象的思路完成,增加可复用 扩充 维护性。

在这里插入图片描述

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

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

相关文章

ruoyi若依平台——部门管理部分源码分析

来都来了给我点个赞和收藏关注一下在走呗~~~~🌹🌹🌹 目录 数据库结构: 一、部门查询 二、部门新增 三、后端 Controller——SysDeptController部门CRUD: 1.获取部门列表信息: 2.排除特定节点的部门列…

C++ 算法学习——1.8 单调栈算法

单调栈(Monotonic Stack)是一种在解决一些数组或者链表相关问题时非常有用的数据结构和算法。在C中,单调栈通常用于解决一些需要快速找到元素左右第一个比当前元素大或小的问题。 定义: 单调栈实际上是一个栈,但是与普…

《大规模语言模型从理论到实践》第一轮学习--强化学习(RLHF、PPO)

个人学习笔记,如有错误欢迎指出。 一、强化学习的意义 RLHF(Reinforcement Learning from Human Feedback):强化学习(Reinforcement Learning)结合人类反馈(Human Feedback)来微调大语言模型。 大语言模型的训练步骤包括:预训练、指令微调(SFT)、对齐。 对齐(a…

NVM 安装步骤

NVM 安装步骤 文章目录 NVM 安装步骤一、NVM 是什么二、用途三、安装步骤详解1. 下载与安装2. 验证安装3. 安装Node.js4. 使用安装的Node.js版本5. 验证Node.js安装 四、NVM 常用命令1. 查看已安装的Node.js版本2. 安装指定版本的Node.js3. 卸载指定版本的Node.js4. 切换到已安…

Redis面试题——第四篇

1. Redis主从复制的常见拓扑结构有哪些 一主多从:这是最基本的拓扑结构,包含一个主节点和多个从节点,所有写操作都在主节点上执行,而读操作可以在从节点上进行,以提高读取速度和负载均衡。 树状主从结构:从…

小米澎湃工具箱,一键获取权限

Hyper工具箱已初步支持魅族设备一键获取权限,配置扫描与ROM包索引均已适配Flyme。 支持小米、魅族手机 功能不止刷机、获取权限更多功能下载体验! 下载:https://pan.quark.cn/s/4e78f870813f

试着了解YOLOx

在特征提取上来说,主干部分使用了focus网络结构,对特征点进行了划分,将特征点信息堆叠到通道上。 同时采用CSPnet结构,在残差网络堆叠的同时,构建大的残差边,经过少量处理直接连接到最后。 过去的YOLO将分…

数据库系统概论之关系数据库标准语言SQL(一)【超详细】

教材: 数据库系统概论(第6版)王珊,杜小勇,陈红编著 目录 一、SQL概述 1.1 SQL 的产生与发展 1.2 SQL的特点 1.3 SQL的基本概念 二、数据定义 2.1 数据库的定义 2.2 数据表的定义 2.3 模式的定义 一、SQL概述 1974年IBM为关系DBMS设…

组合式二值编码

论文名称:《A Practical Approach to 3D Scanning in the Presence ofInterreflections, Subsurface Scattering and Defocus》 简介:组合式二值编码(包含传统格雷码,XOR-02,XOR-04,minSW)&…

Java学习Day25:基础篇15:反射

Java 反射(Reflection) 1.前置反应 是 Java 编程语言的一个强大特性,它允许程序在运行时检查或修改类的行为。这包括获取类的信息(如字段、方法、构造函数等),以及动态地创建对象、调用方法、访问和修改字…

linux的学习第二天

1.vmware的功能: 快照 创建快照: 拍摄此虚拟机的快照:记录保存虚拟机的当前状态,如果系统出现故障,可以通过快照还原(错删系统时可以找到快照的系统状态,然后恢复系统) 恢复快照…

java项目之精品在线试题库系统设计与实现源码(springboot+vue+mysql)

风定落花生,歌声逐流水,大家好我是风歌,混迹在java圈的辛苦码农。今天要和大家聊的是一款基于springboot的精品在线试题库系统设计与实现。项目源码以及部署相关请联系风歌,文末附上联系信息 。 项目简介: 精品在线试…

sentinel dashboard分布式改造落地设计实现解释(二)-分布式discovery组件

discovery discovery负责维护app/机器资料库,transport健康检测, transport上下线处理。discovery关键是分布式存储,后续研究一下raft,其复制,状态机,快照技术,但个人觉得,discover…

软件分享 | 截图工具 Snipaste

今天分享: 今日分享的是一款截图界的神器——Snipaste! 特点: 🎨 超清截图: Snipaste的截图功能,清晰度超乎你的想象。无论是工作文档还是游戏画面,都能一键捕捉,细节尽在掌握。 …

Excel:将一列拆分成多列

实现的效果是: 操作步骤如下: 1.选中列 → 点击菜单栏中的"数据" → 分列 2.选择"分列符号",点击下一步 3.我想要按照空格分列,就选择空格 4.点击完成,就可以实现分列的效果了

uniapp学习(004-2 组件 Part.2生命周期)

零基础入门uniapp Vue3组合式API版本到咸虾米壁纸项目实战,开发打包微信小程序、抖音小程序、H5、安卓APP客户端等 总时长 23:40:00 共116P 此文章包含第31p-第p35的内容 文章目录 组件生命周期我们主要使用的三种生命周期setup(创建组件时执行)不可以操作dom节点…

Shell编程-if判断

作者介绍:简历上没有一个精通的运维工程师。请点击上方的蓝色《运维小路》关注我,下面的思维导图也是预计更新的内容和当前进度(不定时更新)。 我们前面学习了那么多命令,以及涉及到部分逻辑判断的问题。从简单来说,他就是Shell编…

【XYFrame unity框架使用文档】封装unity小框架工具集 —— XYFrame

文章目录 XYFrame介绍优点获取框架源码引入的第三方插件作者信息技术交流群反馈企鹅裙画饼使用文档导入文件目录启动1、单例模式不继承MonoBehaviour的单例模式基类继承MonoBehaviour的单例模式基类 2、Mono管理器3、事件管理系统4、工具类封装unity协程工具,避免 G…

每周心赏|必备AI神器第二弹

大家的假期都是怎么度过的?是已经玩嗨了?还是在家葛优躺,感叹时间飞逝呢? 别急,假期还没完全说拜拜呢!赶紧抓住假期最后的尾巴,和AI神器一起,把快乐放大,不留遗憾&#x…

prompt learning

prompt learning 对于CLIP(如上图所示)而言,对其prompt构造的更改就是在zero shot应用到下游任务的时候对其输入的label text进行一定的更改,比如将“A photo of a{obj}”改为“[V1][V2]…[Vn][Class]”这样可学习的V1-Vn的token…