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問題匯總