Redis配置脚本的含义(/etc/init.d/redis)
# 定义变量
REDISPORT=6379 # Redis 服务使用的端口号,默认是 6379。
EXEC=/usr/local/bin/redis-server # Redis 服务器可执行文件的位置。
CLIEXEC=/usr/local/bin/redis-cli # Redis 命令行客户端可执行文件的位置。
PIDFILE=/var/run/redis_${REDISPORT}.pid # 存储 Redis 服务器进程 ID (PID) 的文件。
CONF="/etc/redis/${REDISPORT}.conf" # Redis 配置文件的位置。
# 处理启动和停止命令的 case 语句
case "$1" in
start)
# 检查 PID 文件是否存在,以确定 Redis 进程是否已经在运行
if [ -f $PIDFILE ]
then
echo "$PIDFILE exists, process is already running or crashed"
else
echo "Starting Redis server..."
$EXEC $CONF # 使用配置文件启动 Redis 服务器
fi
;;
stop)
# 检查 PID 文件是否存在,以确定 Redis 进程是否在运行
if [ ! -f $PIDFILE ]
then
echo "$PIDFILE does not exist, process is not running"
else
PID=$(cat $PIDFILE) # 读取 PID 文件中的 PID 值
echo "Stopping ..."
$CLIEXEC -p $REDISPORT shutdown # 使用 Redis 客户端执行 shutdown 命令来停止 Redis 服务器
# 循环等待 Redis 进程关闭,直到对应的 /proc 文件夹不存在
while [ -x /proc/${PID} ]
do
echo "Waiting for Redis to shutdown ..."
sleep 1
done
echo "Redis stopped"
fi
;;
*)
# 如果传递的参数不是 start 或 stop,则输出提示信息
echo "Please use start or stop as first argument"
;;
esac