Ubuntu14.04下安裝redis-3.2.0以及開機自啟動


 

去官網下載Redis-3.2.0.tar.gz,將redis-3.2.0.tar.gz放入/opt目錄下

解壓redis-3.2.0.tar.gz

xiaoyao@xiaoyao-virtual-machine:/opt$ sudo tar -zxvf redis-3.2.0.tar.gz

編譯redis

xiaoyao@xiaoyao-virtual-machine:/opt$ cd redis-3.2.0/
xiaoyao@xiaoyao-virtual-machine:/opt/redis-3.2.0$ sudo make

安裝

xiaoyao@xiaoyao-virtual-machine:/opt/redis-3.2.0$ sudo make install

測試是否安裝通過

xiaoyao@xiaoyao-virtual-machine:/opt/redis-3.2.0$ sudo make test
見到此字樣:\o/ All tests passed without errors!表示測試安裝通過

如果出現You need tcl 8.5 or newer in order to run the Redis test錯誤

解決辦法

xiaoyao@xiaoyao-virtual-machine:/opt/redis-3.2.0$ sudo apt-get install tcl8.5

修改配置文件,以便其它機器能連接redis服務

xiaoyao@xiaoyao-virtual-machine:/opt/redis-3.2.0$ sudo vim /opt/redis-3.2.0/redis.conf

將bind 127.0.0.1改為bind 0.0.0.0

將redis.conf文件拷貝至/etc/redis目錄下

xiaoyao@xiaoyao-virtual-machine:/opt/redis-3.2.0$ sudo mkdir /etc/redis
xiaoyao@xiaoyao-virtual-machine:/opt/redis-3.2.0$ sudo cp redis.conf /etc/redis/redis.conf

啟動redis服務

xiaoyao@xiaoyao-virtual-machine:/opt/redis-3.2.0$ /usr/local/bin/redis-server /etc/redis/redis.conf

進入redis客戶端,測試redis

xiaoyao@xiaoyao-virtual-machine:/usr/local/bin$ ./redis-cli
127.0.0.1:6379> ping
PONG

通過redisclient軟件去連接redis也沒有問題。

設置開機自啟動

  • 修改redis.conf

    #打開后台運行選項
    daemonize yes
    #設置日志文件路徑
    logfile "/var/log/redis.log"
    
  • 編寫腳本

    xiaoyao@xiaoyao-virtual-machine:/usr/local/bin$ sudo touch /etc/init.d/redis
    xiaoyao@xiaoyao-virtual-machine:/usr/local/bin$ sudo vim /etc/init.d/redis
    

    下面是腳本的內容

    #!/bin/sh
    # chkconfig: 2345 10 90
    # description: Start and Stop redis
    
    PATH=/usr/local/bin
    REDISPORT=6379
    EXEC=/usr/local/bin/redis-server
    REDIS_CLI=/usr/local/bin/redis-cli
    PIDFILE=/var/run/redis.pid
    CONF="/etc/redis/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 exists, 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|fore-reload}"
            exit 1
    esac 
    
  • 添加腳本的執行權限

    xiaoyao@xiaoyao-virtual-machine:/usr/local/bin$ sudo chmod +x /etc/init.d/redis
    
  • 設置開機自動啟動

    xiaoyao@xiaoyao-virtual-machine:/usr/local/bin$ sudo update-rc.d redis defaults
    
  • 使用腳本啟動服務

    開啟redis
    xiaoyao@xiaoyao-virtual-machine:/usr/local/bin$ service redis start
    停止redis
    xiaoyao@xiaoyao-virtual-machine:/usr/local/bin$ service redis stop
    重啟redis
    xiaoyao@xiaoyao-virtual-machine:/usr/local/bin$ service redis restart
    
  • 將機器關機,重新啟動

此時發現redis服務也啟動了

 
 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM