1. 程式人生 > >redis 安裝和設定服務啟動

redis 安裝和設定服務啟動

1. 去官網下載redis最新版本到/web/doc/資料夾(可自己定義)

下載連結:http://219.239.26.13/files/205900000B7E5F47/download.redis.io/releases/redis-4.0.9.tar.gz

$ tar -xzf redis-4.0.9.tar.gz
$ cd redis-4.0.9
$ make test
$ make

make test 可能會顯示tcl版本低,需要安裝最新tcl

$ wget http://downloads.sourceforge.net/tcl/tcl8.6.1-src.tar.gz
$ tar -xzf tcl8.6.1-src.tar.gz
$ 
cd tcl8.6.1 $ cd unix $ ./configure $ make test $ make $ make install

然後在接著安裝redis

make完後 redis-4.0.9目錄下會出現編譯後的redis服務程式redis-server,還有用於測試的客戶端程式redis-cli,兩個程式位於安裝目錄 src 目錄下:

redis的啟動方式:

1. 下面啟動redis服務.

$ cd src
$ ./redis-server

注意這種方式啟動redis 使用的是預設配置。

2. 也可以通過啟動引數告訴redis使用指定配置檔案使用下面命令啟動。

$ cd src
$ 
./redis-server redis.conf

redis.conf是一個預設的配置檔案。我們可以根據需要使用自己的配置檔案。

啟動redis服務程序後,就可以使用測試客戶端程式redis-cli和redis服務互動了。比如:

$ cd src
$ ./redis-cli
redis> set foo bar
OK
redis> get foo
"bar"

3.使用redis啟動指令碼設定開機自啟動

啟動指令碼 redis_init_script 位於位於Redis的 /utils/ 目錄下,redis_init_script指令碼程式碼如下:

#!/bin/sh

#
# Simple Redis init.d script conceived to work on Linux systems # as it does use of the /proc filesystem.   #redis伺服器監聽的埠 REDISPORT=6379   #服務端所處位置 EXEC= /usr/local/bin/redis-server   #客戶端位置 CLIEXEC= /usr/local/bin/redis-cli   #redis的PID檔案位置,需要修改 PIDFILE= /var/run/redis_ ${REDISPORT}.pid   #redis的配置檔案位置,需將${REDISPORT}修改為檔名 CONF= "/etc/redis/${REDISPORT}.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

根據啟動指令碼,將修改好的配置檔案複製到指定目錄下,用root使用者進行操作:

$ mkdir /etc/redis
$ cp redis.conf /etc/redis/6379.conf

將啟動指令碼複製到/etc/init.d目錄下,本例將啟動指令碼命名為redisd(通常都以d結尾表示是後臺自啟動服務)。

$ cp redis_init_script /etc/init.d/redisd

設定為開機自啟動,直接配置開啟自啟動 chkconfig redisd on 發現錯誤: service redisd does not support chkconfig

解決辦法,在啟動指令碼開頭新增如下注釋來修改執行級別:

#!/bin/sh
# chkconfig:  2345 90 10

再設定即可

#設定為開機自啟動伺服器
$chkconfig redisd on #開啟服務 $service redisd start #關閉服務 $service redisd stop

執行service redisd start 或stop 發現錯誤:/var/run/redis_6379.pid does not exist, process is not running

在/var/run/資料夾下 vi 新建redis_6379.pid,輸入redis埠號6379,然後儲存就可以了。