CentOS 7.2 云主机编译 Redis 5.0 RC4

作者 : 开心源码 本文共3049个字,预计阅读时间需要8分钟 发布时间: 2022-05-12 共179人阅读

环境:

uname -a

Linux 10-23-40-136 3.10.0-862.9.1.el7.x86_64 #1 SMP Mon Jul 16 16:29:36 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux

gcc –version

gcc (GCC) 4.8.5 20150623 (Red Hat 4.8.5-28)

wget http://download.redis.io/releases/redis-5.0-rc4.tar.gz

tar xf redis-5.0-rc4.tar.gz

cd redis-5.0-rc4

# 32位系统执行下面的行,而后再编译,64位系统不用执行

sed -i '1i\CFLAGS= -march=i686' src/Makefile

make -j `grep processor /proc/cpuinfo | wc -l`

mkdir -p /data/redis/{bin,etc,var}

cp src/{redis-benchmark,redis-check-aof,redis-check-rdb,redis-cli,redis-sentinel,redis-server} /data/redis/bin/

cp redis.conf /data/redis/etc/

sed -i 's@pidfile.*@pidfile /var/run/redis/redis.pid@' /data/redis/etc/redis.conf

sed -i “s@logfile.*@logfile /data/redis/var/redis.log@” /data/redis/etc/redis.conf

sed -i “s@^dir.*@dir /data/redis/var@” /data/redis/etc/redis.conf

sed -i 's@daemonize no@daemonize yes@' /data/redis/etc/redis.conf

sed -i “s@^# bind 127.0.0.1@bind 127.0.0.1@” /data/redis/etc/redis.conf

Mem=`free -m | awk '/Mem:/{print $2}'`

redis_maxmemory=`expr $Mem / 8`000000

[ -z “`grep ^maxmemory /data/redis/etc/redis.conf`” ] && sed -i “s@maxmemory @maxmemory \nmaxmemory `expr $Mem / 8`000000@” /data/redis/etc/redis.conf

useradd -M -s /sbin/nologin redis

chown -R redis:redis /data/redis/{var,etc}

# 建立启动脚本 redis

vi /etc/init.d/redis

#! /bin/sh

### BEGIN INIT INFO

# Provides: redis

# Required-Start: $syslog

# Required-Stop: $syslog

# Should-Start: $local_fs

# Should-Stop: $local_fs

# Default-Start: 2 3 4 5

# Default-Stop: 0 1 6

# Short-Description: redis-server – Persistent key-value db

# Description: redis – Persistent key-value db

### END INIT INFO

PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin

DAEMON=/data/redis/bin/redis-server

DAEMON_ARGS=/data/redis/etc/redis.conf

NAME=redis

DESC=redis

PIDFILE=/var/run/redis/redis.pid

PIDDIR=`dirname $PIDFILE`

test -x $DAEMON || exit 0

test -x $DAEMONBOOTSTRAP || exit 0

set -e

case “$1” in

start)

echo -n “Starting $DESC: “

# Make sure the default pidfile directory exists

if [ ! -d $PIDDIR ]; then

install -d -m 0755 -o redis -g redis $PIDDIR

fi

if start-stop-daemon –start –quiet –pidfile $PIDFILE –chuid redis:redis –exec $DAEMON — $DAEMON_ARGS

then

echo “[OK]”

else

echo “failed”

fi

;;

stop)

echo -n “Stopping $DESC: “

if start-stop-daemon –stop –retry 10 –quiet –oknodo –pidfile $PIDFILE –exec $DAEMON

then

echo “[OK]”

else

echo “failed”

fi

;;

status)

if [ ! -r $PIDFILE ] ; then

echo “redis-server is stopped”

exit 0

fi

PID=`cat $PIDFILE`

if ps -p $PID | grep -q $PID; then

echo “redis-server (pid $PID) is running…”

else

echo “redis-server dead but pid file exists”

fi

;;

restart|force-reload)

${0} stop

${0} start

;;

*)

echo “Usage: /etc/init.d/$NAME {start|stop|restart|status|force-reload}” >&2

exit 1

;;

esac

exit 0

chmod +x /etc/init.d/redis

# Debian

update-rc.d redis defaults

# CentOS

wget http://developer.axis.com/download/distribution/apps-sys-utils-start-stop-daemon-IR1_9_18-2.tar.gz

cd apps/sys-utils/start-stop-daemon-IR1_9_18-2/

cc start-stop-daemon.c -o /sbin/start-stop-daemon

cd ../../../

chkconfig –add redis

chkconfig redis on

# 设置密码,开启远程访问redis

# 修改 /data/redis/etc/redis.conf

# 找到以下行:

# #requirepass

# 去掉注释 # ,并设置密码:

# requirepass newpassword

# 将:

# protected-mode yes

# 改为:

# protected-mode no

# 将:

# bind 127.0.0.1

# 注释掉,或者者改为:

# bind 0.0.0.0

# 启动服务

service redis start

# 本机访问,需要输入密码:

/data/redis/bin/redis-cli

auth newpassword

CentOS 7.2 云主机编译 Redis 5.0 RC4

说明
1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 本站资源售价只是摆设,本站源码仅提供给会员学习使用!
7. 如遇到加密压缩包,请使用360解压,如遇到无法解压的请联系管理员
开心源码网 » CentOS 7.2 云主机编译 Redis 5.0 RC4

发表回复