linux安装redis及配置开机自启

版权声明: https://blog.csdn.net/typ1805/article/details/81451777

一、上传Redis安装包到Linux服务器某文件中,再解压Redis安装包

tar xzf redis-3.2.9.tar.gz  

二、进入Redis目录

cd redis-3.2.9 

三、编译原码

Make  

图例:

 

四、新建立一个目录存放Redis的必要文件,因为编译生成的东西比较多,也乱

mkdir bin  

五、复制文件

1、复制Redis的配置文件(redis.conf)到bin目录下。注意:这个配置文件是在Redis根目录的。

cp  redis.conf  /usr/redis/redis-3.2.9/bin/ 

 2、进入src目录

cd src  

3、复制Redis的redis-server文件到bin目录下。

cp  redis-server  /usr/redis/redis-3.2.9/bin/  

4、复制Redis的redis-cli 文件到bin目录下。

cp  redis-cli  /usr/redis/redis-3.2.9/bin/  

5、复制Redis的redis-benchmark文件到bin目录下。

cp  redis-benchmark  /usr/redis/redis-3.2.9/bin/  

六、再进入bin目录

cd  /usr/redis/redis-3.2.9/bin/  

七、启动Redis服务(前面是有点的),不能关闭这个(不能使用Ctrl+C终止,这样会退出Redis服务的)

./redis-server  

八、需要再打开另一个命令窗口启动客户端

1、先进入bin目录

cd  /usr/redis/redis-3.2.9/bin/

2、启动客户端命令

./redis-cli 

3、然后就可以使用Redis命令操作了。

 九、Redis自动启动见: 

1、新建、编写开机自启动脚本(redis-auto为新建的文件)

vi /etc/init.d/redis-auto  

2、在文件redis-auto加入如下内容:(注意Redis具体的安装路径)

#!/bin/sh  
#chkconfig: 2345 80 90  
# Simple Redis init.d script conceived to work on Linux systems  
# as it does use of the /proc filesystem.  
REDISPORT=6379  
REDISPATH=/usr/redis/redis-3.2.9/bin  
EXEC=${REDISPATH}/redis-server  
CLIEXEC=${REDISPATH}/redis-cli  
PIDFILE=/var/run/redis_${REDISPORT}.pid  
CONF="${REDISPATH}/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  
    ;;  
  stop)  
    if [ ! -f $PIDFILE ]  
    then  
        echo "$PIDFILE does not exist, process is not running"  
    else  
        PID=$(cat $PIDFILE)  
        echo "Stopping ..."  
        $CLIEXEC -p $REDISPORT shutdown  
        while [ -x /proc/${PID} ]  
        do  
          echo "Waiting for Redis to shutdown ..."  
          sleep 1  
        done  
        echo "Redis stopped"  
    fi  
    ;;  
  *)  
    echo "Please use start or stop as first argument"  
    ;;  
esac  

3、保存退出

:wq 

4、设置文件redis-auto的权限,让Linux可以执行

chmod 755 redis-auto  

5、启动Redis服务测试,此处启动用的是第二步设置的启动脚本

/etc/init.d/redis-auto start  

 可以打开redis-cli客户端进行测试

6、设置开机自启动:

chkconfig redis-auto on  

7、经过测试,Linux系统在重新启动时,Redis的数据会自动丢失,解决方案见:

问题说明:

在Linux系统中,Redis本来是有数据的,但在Linux系统重启后,Redis中的数据全部丢失。经过几次测试都一样,只有在Linux系统重启才会丢失,Redis重启应该是没有问题的。

这个问题只在Linux系统才存在,在Windows系统是没有问题的。

解决方案:

在Linux系统设置一个参数(vm.overcommit_memory)即可解决。

步骤如下:

1、编辑 sysctl.conf 配置文件

vi /etc/sysctl.conf 

2、另起一行增加参数 vm.overcommit_memory 配置,如下

vm.overcommit_memory = 1  

3、使配置文件生效

sysctl -p   

再重启Linux系统查看数据是没有丢失的

猜你喜欢

转载自blog.csdn.net/typ1805/article/details/81451777