上一篇:搭建LNAMP环境(四)- 源码安装PHP7

一、安装Redis

1.创建redis用户组和用户

groupadd redis
useradd -r -g redis -s /sbin/nologin -M redis

2.下载redis源码包,将源码包放到/usr/local/src/目录下

下载页面:http://redis.io/download
这里用的是redis-3.2.5.tar.gz
下载地址:http://download.redis.io/releases/redis-3.2.5.tar.gz

3.进入src/目录

cd /usr/local/src/

4.解压源码包

tar -zxf redis-3.2.5.tar.gz

5.进入redis源码目录,编译安装

cd redis-3.2.5/

make PREFIX=/usr/local/redis install

6.创建redis文件目录

mkdir -p /usr/local/redis/data
mkdir -p /usr/local/redis/etc
mkdir -p /var/run/redis
mkdir -p /var/log/redis

7.将配置文件放入redis/etc/目录

cp redis.conf /usr/local/redis/etc/

8.修改redis配置文件redis.conf

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

9.修改为下面内容,保存退出

tcp-backlog 128                   #tcp队列长度,CentOS系统默认为128,此值不应该大于操作系统的该值
daemonize yes                    #改为yes,保证redis可以后台运行
pidfile /var/run/redis/redis.pid   #redis pid
logfile "/var/log/redis/redis.log" #redis日志
dir /usr/local/redis/data/         #redis数据存储目录
#------ 可选配置 ------ #slaveof 192.168.1.66 6379      #主从复制,在副机上配置,例:IP 192.168.1.66,端口 6379 #save 60 10000 #快照,例:60s内10000个更改就保存 #appendonly yes #AOF持久化

10.修改redis目录权限

chown -R redis:redis /usr/local/redis
chown -R redis:redis /var/run/redis
chown -R redis:redis /var/log/redis

11.将redis命令加入环境变量,修改profile文件

vim /etc/profile

12.修改为下面内容,保存退出

PATH=/usr/local/mysql/bin:/usr/local/php/bin:/usr/local/redis/bin:$PATH

13.使/etc/profile里的配置立即生效

source /etc/profile

14.将redis服务脚本加入到init.d/目录,创建redisd文件

vim /etc/init.d/redisd

15.加入下面内容,保存退出

#!/bin/sh
#
# chkconfig:   35 84 16
# Simple Redis init.d script conceived to work on Linux systems
# as it does use of the /proc filesystem.
 
. /etc/rc.d/init.d/functions
. /etc/sysconfig/network
 
[ "$NETWORKING" = "no" ] && exit 0
 
REDISPORT=6379
BASEDIR=/usr/local/redis
EXEC=$BASEDIR/bin/redis-server
CLIEXEC=$BASEDIR/bin/redis-cli
 
PIDFILE=/var/run/redis/redis.pid
CONF="$BASEDIR/etc/redis.conf"
 
function start() {
        if [ -f $PIDFILE ]
        then
                echo "$PIDFILE exists, process is already running or crashed"
        else
                echo -n "Starting Redis server..."
                daemon --user=redis --pidfile=$PIDFILE $EXEC $CONF
                #$EXEC $CONF
                echo
        fi
}
function stop() {
        if [ ! -f $PIDFILE ]
        then
                echo "$PIDFILE does not exist, process is not running"
        else
                PID=$(cat $PIDFILE)
                echo "Stopping ..."
                #$CLIEXEC -p $REDISPORT shutdown
                killproc -p $PIDFILE $EXEC -INT
                echo -n "Waiting for Redis saving data & shutdown ."
                while [ -x /proc/${PID} ]
                do
                    sleep 1
                    echo -n "."
                done
                echo -e "\nRedis stopped"
        fi
}
 
case "$1" in
    start)
        start
        ;;
    stop)
        stop
        ;;
    status)
        status -p $PIDFILE $EXEC
        ;;
    restart)
        stop
        start
        ;;
    *)
        echo "Please use start or stop as first argument"
        ;;
esac
View Code

相关文章: