CentOS 7.4 源码编译安装 Redis

时间:2023-03-09 04:19:41
CentOS 7.4  源码编译安装 Redis

一、CentOS 7.4  源码编译安装 Redis

  1、下载源码并解压

wget http://download.redis.io/releases/redis-4.0.10.tar.gz
tar -xzf redis-4.0..tar.gz
cd redis-4.0.

  2、依赖安装、编译、安装

yum -y install gcc gcc-c++ kernel-devel
make
make PREFIX=/usr/local/redis install
mkdir /usr/local/redis/etc/
cp redis.conf /usr/local/redis/etc/
cd /usr/local/redis/bin/
cp redis-benchmark redis-cli redis-server /usr/bin/

  3、更改配置

vim /usr/local/redis/etc/redis.conf

# 修改一下配置
# redis以守护进程的方式运行
# no表示不以守护进程的方式运行(会占用一个终端)
daemonize yes # 客户端闲置多长时间后断开连接,默认为0关闭此功能
timeout # 设置redis日志级别,默认级别:notice
loglevel verbose # 设置日志文件的输出方式,如果以守护进程的方式运行redis 默认:""
# 并且日志输出设置为stdout,那么日志信息就输出到/dev/null里面去了
logfile stdout
# 设置密码授权
requirepass <设置密码>
# 监听ip
bind 127.0.0.1

  4、配置环境变量

vim /etc/profile
export PATH="$PATH:/usr/local/redis/bin"
# 保存退出 # 让环境变量立即生效
source /etc/profile

  5、配置启动脚本

#!/bin/bash
#chkconfig:
# Simple Redis init.d script conceived to work on Linux systems
# as it does use of the /proc filesystem. PATH=/usr/local/bin:/sbin:/usr/bin:/bin
REDISPORT=
EXEC=/usr/local/redis/bin/redis-server
REDIS_CLI=/usr/local/redis/bin/redis-cli PIDFILE=/var/run/redis.pid
CONF="/usr/local/redis/etc/redis.conf" case "$1" in
start)
if [ -f $PIDFILE ]
then
echo "$PIDFILE exists, process is already running or crashed"
else
echo "Starting Redis server..."
$EXEC $CONF
fi
if [ "$?"="" ]
then
echo "Redis is running..."
fi
;;
stop)
if [ ! -f $PIDFILE ]
then
echo "$PIDFILE does not exist, process is not running"
else
PID=$(cat $PIDFILE)
echo "Stopping ..."
$REDIS_CLI -p $REDISPORT SHUTDOWN
while [ -x ${PIDFILE} ]
do
echo "Waiting for Redis to shutdown ..."
sleep
done
echo "Redis stopped"
fi
;;
restart|force-reload)
${} stop
${} start
;;
*)
echo "Usage: /etc/init.d/redis {start|stop|restart|force-reload}" >&
exit
esac

  6、配置开机启动

# 复制脚本文件到init.d目录下
cp redis /etc/init.d/ # 给脚本增加运行权限
chmod +x /etc/init.d/redis # 查看服务列表
chkconfig --list # 添加服务
chkconfig --add redis # 配置启动级别
chkconfig --level redis on

  7、启动测试

systemctl start redis   #或者 /etc/init.d/redis start
systemctl stop redis #或者 /etc/init.d/redis stop # 查看redis进程
ps -el|grep redis # 端口查看
netstat -an|grep

参考文档:

https://www.cnblogs.com/stulzq/p/9288401.html

https://segmentfault.com/a/1190000003084917

https://www.cnblogs.com/smail-bao/p/6164132.html

https://www.cnblogs.com/joshua317/p/5635483.html