1. 程式人生 > >Redis問題匯總

Redis問題匯總

問題 inf for 安裝 stop warning spa provide ^c

Redis腳本啟動問題

因軟件包自帶的有腳本,我用的是4.0.10的源碼包,修改即可

[root@localhost redis-4.0.10]# find / -name redis_init_script

/usr/local/redis-4.0.10/utils/redis_init_script

[root@localhost redis-4.0.10]# cp /usr/local/redis-4.0.10/utils/redis_init_script /etc/init.d/redisd

[root@localhost redis-4.0.10]#cat /etc/init.d/redisd


#!/bin/sh

#

# Simple Redis init.d script conceived to work on Linux systems

# as it does use of the /proc filesystem.


### BEGIN INIT INFO

# Provides: redis_6379

# Default-Start: 2 3 4 5

# Default-Stop: 0 1 6

# Short-Description: Redis data structure server

# Description: Redis data structure server. See https://redis.io

### END INIT INFO


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 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

我的端口是6380 ,安裝目錄在/usr/local/redis-4.0.10 ,所以REDISPORT=6380 ,EXEC=/usr/local/redis-4.0.10/src/redis-server ,CLIEXEC=/usr/local/redis-4.0.10/src/redis-cli ,CONF="/usr/local/redis-4.0.10/redis.conf"

給與執行權限後停止報錯

[root@localhost redis-4.0.10]# /etc/init.d/redisd stop

Stopping ...

Warning: Using a password with '-a' option on the command line interface may not be safe.

(error) NOAUTH Authentication required.

Waiting for Redis to shutdown ...

Waiting for Redis to shutdown ...

Waiting for Redis to shutdown ...

Waiting for Redis to shutdown ...

Waiting for Redis to shutdown ...

Waiting for Redis to shutdown ...

^C

此時檢查進程還在,既然是提示驗證出錯,那就檢查腳本

$CLIEXEC -a "password" -p $REDISPORT shutdown

添加紅色內容,password是用redis-cli客戶端登陸 -a後面跟的密碼


[root@localhost redis-4.0.10]# /etc/init.d/redisd stop

Stopping ...

Warning: Using a password with '-a' option on the command line interface may not be safe.

Waiting for Redis to shutdown ...

Redis stopped

OK已成功停止Redis




Redis問題匯總