CentOS Linux release 7.9.2009 (Core)环境下源码编译安装redis
#wget https://download.redis.io/releases/redis-6.2.6.tar.gz tar -xzf redis-6.2.6.tar.gz cd redis redis-6.2.6
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/
vim /usr/local/redis/etc/redis.conf # 修改一下配置 # redis以守护进程的方式运行 # no表示不以守护进程的方式运行(会占用一个终端) daemonize yes # 客户端闲置多长时间后断开连接,默认为0关闭此功能 timeout 300 # 设置redis日志级别,默认级别:notice loglevel verbose # 设置日志文件的输出方式,如果以守护进程的方式运行redis 默认:"" # 并且日志输出设置为stdout,那么日志信息就输出到/dev/null里面去了 logfile stdout # 设置密码授权 requirepass <设置密码> # 监听ip bind 0.0.0.0
vim /etc/profile export PATH="$PATH:/usr/local/redis/bin" # 保存退出 # 让环境变量立即生效 source /etc/profile
#!/bin/bash #chkconfig: 2345 80 90 # 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=6379 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 [ "$?"="0" ] 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 1 done echo "Redis stopped" fi ;; restart|force-reload) ${0} stop ${0} start ;; *) echo "Usage: /etc/init.d/redis {start|stop|restart|force-reload}" >&2 exit 1 esac
# 复制脚本文件到init.d目录下 cp redis /etc/init.d/ # 给脚本增加运行权限 chmod +x /etc/init.d/redis # 查看服务列表 chkconfig --list # 添加服务 chkconfig --add redis # 配置启动级别 chkconfig --level 2345 redis on
systemctl start redis #或者 /etc/init.d/redis start systemctl stop redis #或者 /etc/init.d/redis stop # 查看redis进程 ps -el|grep redis # 端口查看 netstat -an|grep 6379