linux设置开机自启动脚本Redis脚本设置为服务并开机自启动linux中redis开机自动启动




linux设置开机自启动脚本Redis脚本设置为服务并开机自启动linux中redis开机自动启动

2022-07-20 21:53:58 网络知识 官方管理员

如何在Linux中配置Redis服务并设置为开机自启

废话不多说,咱们直接开始。

1、修改redis.conf配置文件

配置redis.conf中daemonize为yes,确保守护进程开启。

大概在148行,当然你也可以使用:/daemonize搜索。

linux设置开机自启动脚本(Redis脚本设置为服务并开机自启动)(1)

2、查看原生的redis启动脚本

[root@kingdom~]#find/-nameredis_init_script

/general-redis/redis-4.0/utils/redis_init_script

提示:

redis启动脚本一般在redis根目录的utils

linux设置开机自启动脚本(Redis脚本设置为服务并开机自启动)(2)

(2)查看脚本

vim/general-redis/redis-4.0/utils/redis_init_script

提示:

注意以下标红的这几点。

因为我们下面的操作都是为它服务的。

其实就是把这些变量的值修改为我们自己redis的实际路径和配置文件。

补充一点:

大家可以多looklook人家的脚本,可以学到不少东西。

linux设置开机自启动脚本(Redis脚本设置为服务并开机自启动)(3)

3、复制脚本redis_init_script

将redis_init_script复制到/etc/init.d/redis

这里是为了将其配置为服务,方便管理。

[root@kingdom~]#cp/general-redis/redis-4.0/utils/redis_init_script/etc/init.d/redis

[root@kingdom~]#ll/etc/init.d/redis

-rwxr-xr-x1rootroot1098Sep2010:11/etc/init.d/redis

linux设置开机自启动脚本(Redis脚本设置为服务并开机自启动)(4)

4、修改脚本redis

注意:

这里修改的是/etc/init.d/redis脚本,它将在修改完后完全为我们服务。

vim/etc/init.d/redis

(1)、添加如下图两行内容

#chkconfig:23456677

#description:redisserviceshell

关于为什么这样做,请参考在下之前的文章:

浅谈Linux中通过chkconfig来设置服务开机自启动

linux设置开机自启动脚本(Redis脚本设置为服务并开机自启动)(5)

(2)、修改server和cli路径

查看自己redis的server和cli绝对路径

我的是这个/general-redis/redis4.0/bin

linux设置开机自启动脚本(Redis脚本设置为服务并开机自启动)(6)

修改脚本如下:

linux设置开机自启动脚本(Redis脚本设置为服务并开机自启动)(7)

(3)、创建配置文件

原来的配置文件CONF="/etc/redis/${REDISPORT}.conf",这里的REDISPORT=6379。

即:CONF的位置在/etc/redis/6379.conf

这里我们可以和它保持一致,当然也可以自定位置。

我选择前者。

补充:要是选择后者需要指定CONF=你的配置文件实际位置

/etc创建redis目录and将我们的配置文件cp到/etc/redis/下。

[root@kingdombin]#mkdir/etc/redis

[root@kingdombin]#cp/general-redis/redis4.0/etc/redis.conf/etc/redis/6379.conf

[root@kingdombin]#ll/etc/redis/6379.conf

-rw-r--r--1rootroot58882Sep2010:34/etc/redis/6379.conf

linux设置开机自启动脚本(Redis脚本设置为服务并开机自启动)(8)

别忘把redis脚本:wq保存退出

最后补充一点:

如果你的redis设置了密码,stop时需要cli客户端指定密码登录来进行执行shutdown命令

如下图:

$CLIEXEC-p$REDISPORT-a123456shutdown

linux设置开机自启动脚本(Redis脚本设置为服务并开机自启动)(9)

5、测试脚本

ps-ef|grepredis*

serviceredisstart

serviceredisstop

linux设置开机自启动脚本(Redis脚本设置为服务并开机自启动)(10)

6、设置为开机启动

[root@kingdom~]#chkconfigredison

[root@kingdom~]#chkconfig--list

linux设置开机自启动脚本(Redis脚本设置为服务并开机自启动)(11)

测试完成,感谢大家支持。

7、补充

Redis脚本内容如下所示,或者大家可以留言。

#!/bin/sh

#chkconfig:23456677

#description:redisserviceshell

#SimpleRedisinit.dscriptconceivedtoworkonLinuxsystems

#asitdoesuseofthe/procfilesystem.

REDISPORT=6379

EXEC=/general-redis/redis4.0/bin/redis-server

CLIEXEC=/general-redis/redis4.0/bin/redis-cli

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

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

case"$1"in

start)

if[-f$PIDFILE]

then

echo"$PIDFILEexists,processisalreadyrunningorcrashed"

else

echo"StartingRedisserver..."

$EXEC$CONF

fi

;;

stop)

if[!-f$PIDFILE]

then

echo"$PIDFILEdoesnotexist,processisnotrunning"

else

PID=$(cat$PIDFILE)

echo"Stopping..."

$CLIEXEC-p$REDISPORTshutdown

while[-x/proc/${PID}]

do

echo"WaitingforRedistoshutdown..."

sleep1

done

echo"Redisstopped"

fi

;;

*)

echo"Pleaseusestartorstopasfirstargument"

;;

esac

发表评论:

最近发表
网站分类
标签列表