1. 程式人生 > >Redis學習筆記(一)開始之啟動和停止Redis

Redis學習筆記(一)開始之啟動和停止Redis

Redis-server

Redis伺服器

Redis-client

Redis命令列客戶端

Redis-benchmark

Redis效能測試工具

Redis-check-aof

AOF檔案修復工具

Redis-check-dump

RDB檔案檢查工具

1Redis直接啟動:

$  redis-server

預設埠6379

$ redis-server --port 6380

2、初始化指令碼啟動Redis

Linux系統中可用初始化指令碼,自動啟動Redis

初始化指令碼如下:

#!/bin/sh

REDISPORT=6379

EXEC=/usr/local/bin/redis-server

CLIEXEC=/usr/local/bin/redis-cli

PIDFILE=/var/run/redis_${REDISPORT}.pid

CONF="/etc/redis/${REDISPORT}.conf"

case"$1" in

start)

if  [ -f $PIDFILE ]

then

echo "$PIDFILE is exists, process is already running orcrashed"

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 "Stoping…"

$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

1)配置初始化指令碼。將初始化指令碼複製到/etc/init.d目錄中,檔名為redis_埠號。修改指令碼中的REDISPORT變數值為同樣的埠號

2)建立需要的資料夾。

/etc/redis

存放Redis的配置檔案

/var/redis/埠號

存放Redis的持久化檔案

3)修改配置檔案。將配置檔案模板複製到/etc/redis目錄中,以埠號命名(如:6379.conf),修改部分引數值

daemonize

yes

使Redis以守護程序模式執行

pidfile

/var/run/redis_埠號.pid

設定RedisPID檔案位置

port

埠號

設定Redis監聽的埠號

dir

/var/redis/埠號

設定持久化檔案存放位置

執行下面命令使Redis隨系統自動啟動:

sudo update-rc.d redis_埠號 defaults

停止Redis

$ redis-cli shutdown

kill Redis程序的PID 也可以正常結束Redis

Redis命令列客戶端redis-cli

$redis-cli -h 127.0.0.1 -p 6379

$redis-cli PING

PONG

$redis-cli

redis 127.0.0.1:6379> PING

PONG

命令列返回值:

1、狀態恢復

狀態回覆(status reply)直接顯示狀態資訊:

redis> PING

PONG

2、錯誤回覆

錯誤回覆(error reply)以(error)開頭,並在後面跟上錯誤資訊:

redis> ERRORCOMMEND

(error) ERR unkown command 'ERRORCOMMEND'

3、整數回覆

Redis雖然沒有整數型別,但是卻提供了一些用於整數操作的命令,如遞增鍵值的INCR命令會以整數形式返回遞增後的鍵值。整數回覆(integer reply)以(integer)開頭,並在後面跟上整數資料:

redis>INCR foo

(integer) 1

4、字串回覆

字串回覆以雙引號包裹:

redis> GET foo

"1"

特殊情況是當請求的鍵值不存在時會得到一個空結果,顯示為(nil)。如:

redis> GET noexists

(nil)

5、多行字串回覆

多行字串回覆中的每行字串都以一個序號開頭,如:

redis> KEYS *

  1. "bar"
  2. "foo"

可以在Redis執行時通過CONFIG SET命令在不重新啟動Redis的情況下動態修改部分Redis配置。就像這樣:

redis> CONFIG SET loglevel warning

OK

並不是所有的配置都可以使用CONFIG SET命令修改。

同樣在執行的時候也可以使用CONFIG GET命令獲得Redis當前的配置情況,例如:

redis> CONFIG GET loglevel

  1. "loglevel"
  2. "warning"

其中第一行字串回覆表示的是選項名,第二行即是選項值。

Redis支援多資料庫,每個資料庫對外都是以一個從0開始的遞增數字命名,Redis預設支援16個數據庫。客戶端與Redis建立連線後會自動選擇0號資料庫,可以使用SELECT命令選擇幾號資料庫,如:

redis> SELECT 1

OK

redis [1]> GET foo

(nil)