非root用户源码编译安装redis

操作系统:Centos 
安装介质去下载redis
说明:实践操作是在Centos7.5中配置,redis5 - 7版本的搭建步骤均可套用此文章,亲测有效,本文仅供参考


不多说直接开整

一、安装

useradd  redis
passwd redis


yum -y install gcc gcc-c++ autoconf automake make  pcre-devel openssl openssl-devel


su - redis
cd /home/redis
    wget  http://download.redis.io/releases/redis-5.0.7.tar.gz
    tar -zxvf redis-5.0.7.tar.gz
    mv redis-5.0.7  redis-5.0.7_src
cd redis-5.0.7_src

make       --若出现zmalloc.h:50:31: fatal error: jemalloc/jemalloc.h: No such file or directory,执行make MALLOC=libc
make install  PREFIX=/home/redis/redis-5.0.7-6399      --自定义安装目录

二、配置

cp  /home/redis/redis-5.0.7_src/redis.conf   /home/redis/redis-5.0.7-6399
mkdir  /home/redis/redis-5.0.7-6399/log

vi /home/redis/redis-5.0.7-6399/redis.conf

bind 192.168.1.63
daemonize yes     #默认redis不是在后台运行的,如果需要在后台运行,把该项的值更改为yes
port 6399
requirepass redis_123456      #加上登陆密码
pidfile /home/redis/redis-5.0.7-6399/log/6399.pid     
logfile "/home/redis/redis-5.0.7-6399/log/6399.log"

vi  /home/redis/start.sh

#!/bin/sh
REDISPORT=6399
EXEC=/home/redis/redis-5.0.7-6399/bin/redis-server
CLIEXEC=/home/redis/redis-5.0.7-6399/bin/redis-cli
PIDFILE=/home/redis/redis-5.0.7-6399/log/6399.pid
CONF="/home/redis/redis-5.0.7-6399/redis.conf"

# 启动服务
start(){
    if [ -f $PIDFILE ]
    then
        echo "$PIDFILE exists, process is already running or crashed"
    else
        echo "Starting Redis server..."
        $EXEC $CONF
    fi
}

# 停止服务
stop(){
    if [ ! -f $PIDFILE ]
    then
        echo "$PIDFILE does not exist, process is not running"
    else
        PID=$(cat $PIDFILE)
        echo "Stopping ..."
        # 上面配置加的登陆密码
        $CLIEXEC -p $REDISPORT -a redis_123456 shutdown 2>/dev/null
        while [ -x /proc/${PID} ]
        do
            echo "Waiting for Redis to shutdown ..."
            sleep 1
        done
        echo "Redis stopped"
    fi
}

# 启动状态
status(){
    if [ -f $PIDFILE ]
    then
        PID=$(cat $PIDFILE)
        echo "$PIDFILE is running,pid=${PID}"
    else
        echo "$PIDFILE is not running"
    fi
}
case "$1" in
    start)
        start
        ;;
    stop)
        stop
        ;;
    status)
        status
        ;;
    restart)
        stop
        sleep 1s
        start
        ;;
    *)
        echo "Please use start|stop|restart|status as first argument"
        ;;
esac

chmod  700 /home/redis/start.sh

装完后就这几个文件
装完后就这几个文件

三、启动

/home/redis/run.sh  start|stop|restart|status

四、删除无用文件

rm -fr /home/redis/redis-5.0.7_src

也可以留着后续有需要直接 make install  PREFIX=/home/redis/redis-5.0.7-6388,再配个其他端口

报错1:

WARNING Your kernel has a bug that could lead to data corruption during background save. Please upgrade to the latest stable kernel.
25648:M 31 Oct 2022 15:56:18.066 # Redis will now exit to prevent data corruption. Note that it is possible to suppress this warning by setting the following config: ignore-warnings ARM64-COW-BUG

可能你的操作系统是ARM的架构操作系统,此配置默认注释,解除注释即可。

vi  /home/redis/redis-5.0.7-6399/redis.conf

# 解开注释,此配置一般在redis.conf 最后一行
ignore-warnings ARM64-COW-BUG
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

猛买家

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值