CentOS Stream 9 Redis 7.2.7 源码编译一键安装脚本
- 自动编译、自动配置、自动 systemd 托管
- 开启 AOF 持久化 + 密码 + 远程访问
- 安装完直接可用
1#!/bin/bash 2set -euo pipefail 3 4# 版本与路径 5REDIS_VERSION="7.2.7" 6INSTALL_DIR="/usr/local/redis" 7DATA_DIR="/data/redis" 8LOG_DIR="/var/log/redis" 9CONF_DIR="${INSTALL_DIR}/conf" 10REDIS_PASS="123456" 11 12echo -e "\033[32m===== 安装依赖 =====\033[0m" 13dnf install -y gcc gcc-c++ make openssl-devel 14 15echo -e "\033[32m===== 下载 Redis ${REDIS_VERSION} =====\033[0m" 16cd /usr/local/src 17wget -N https://download.redis.io/releases/redis-${REDIS_VERSION}.tar.gz 18 19echo -e "\033[32m===== 解压 & 编译 =====\033[0m" 20tar zxf redis-${REDIS_VERSION}.tar.gz 21cd redis-${REDIS_VERSION} 22make -j$(nproc) 23 24echo -e "\033[32m===== 安装 =====\033[0m" 25make install PREFIX=${INSTALL_DIR} 26 27echo -e "\033[32m===== 创建目录 =====\033[0m" 28mkdir -p ${CONF_DIR} ${DATA_DIR} ${LOG_DIR} 29 30echo -e "\033[32m===== 复制配置文件 =====\033[0m" 31cp redis.conf ${CONF_DIR}/redis.conf 32 33echo -e "\033[32m===== 自动配置 redis.conf =====\033[0m" 34sed -i "s|^bind .*|bind 0.0.0.0|" ${CONF_DIR}/redis.conf 35sed -i "s|^protected-mode .*|protected-mode no|" ${CONF_DIR}/redis.conf 36sed -i "s|^port .*|port 6379|" ${CONF_DIR}/redis.conf 37sed -i "s|^daemonize .*|daemonize no|" ${CONF_DIR}/redis.conf 38sed -i "s|^logfile .*|logfile ${LOG_DIR}/redis.log|" ${CONF_DIR}/redis.conf 39sed -i "s|^dir .*|dir ${DATA_DIR}|" ${CONF_DIR}/redis.conf 40sed -i "s|^# requirepass .*|requirepass ${REDIS_PASS}|" ${CONF_DIR}/redis.conf 41sed -i "s|^appendonly .*|appendonly yes|" ${CONF_DIR}/redis.conf 42 43echo -e "\033[32m===== 创建 systemd 服务 =====\033[0m" 44cat >/usr/lib/systemd/system/redis.service <<EOF 45[Unit] 46Description=Redis Server 47After=network.target 48 49[Service] 50Type=simple 51ExecStart=${INSTALL_DIR}/bin/redis-server ${CONF_DIR}/redis.conf 52ExecReload=/bin/kill -USR2 \$MAINPID 53Restart=on-failure 54LimitNOFILE=65535 55 56[Install] 57WantedBy=multi-user.target 58EOF 59 60echo -e "\033[32m===== 启动并开机自启 =====\033[0m" 61systemctl daemon-reload 62systemctl enable --now redis 63sleep 2 64 65echo -e "\033[32m===== 加入全局命令 =====\033[0m" 66echo "export PATH=\$PATH:${INSTALL_DIR}/bin" >/etc/profile.d/redis.sh 67source /etc/profile.d/redis.sh 68 69echo -e "\033[32m===== 安装完成!=====\033[0m" 70redis-server --version 71redis-cli --version 72echo 73echo "安装目录:${INSTALL_DIR}" 74echo "配置文件:${CONF_DIR}/redis.conf" 75echo "数据目录:${DATA_DIR}" 76echo "密码:${REDIS_PASS}" 77echo "测试:redis-cli -a ${REDIS_PASS}" 78
使用方法
1# 1. 创建脚本 2vim install_redis727.sh 3 4# 2. 粘贴上面全部内容,保存 5 6# 3. 加执行权限 7chmod +x install_redis727.sh 8 9# 4. 运行 10./install_redis727.sh 11
安装后信息
- 端口:6379
- 密码:123456
- 开启 AOF 持久化
- 允许远程访问
- 开机自启
- 命令全局可用
测试
1redis-cli -a 123456 2127.0.0.1:6379> set test ok 3127.0.0.1:6379> get test 4