Centos7系统下编写systemd脚本设置redis开机自启动

本文介绍了一种使用systemd设置Redis开机自启动的方法,通过编写unit文件实现对Redis进程的统一管理,包括启动、停止及状态检查。文章分享了具体的配置步骤和代码示例。

今天想设置redis开机自启动,我觉得这样子比较好,但是在网上找了很长时间发现大家都是基于chkconfig的写法来设置的,并不能由systemd进程来统一管理,所以这里我自己编写了一个,希望大家可以提出宝贵意见。

首先是在配置文件将redis的进程设置为daemon守护模式运行

接下来编写unit代码:

[root@ELK-chaofeng04 system]# cat redis.service 
[Unit]
Description=nginx scripts 
After=network.target remote-fs.target nss-lookup.target syslog.target

[Service]
Type=forking
Password=123456
PidPort=6379
ExecStart=/usr/local/redis/bin/redis-server /usr/local/redis/conf/redis.conf
ExecStop=/usr/local/redis/bin/redis-cli -a ${Password} -p ${PidPort} shutdown

[Install]
WantedBy=multi-user.target

将这段代码贴在配置文件中,然后命名为redis.service并放在/usr/lib/systemd/system目录下即可。最后使用systemctl  enable redis即可设置成功开启自启动。

首先需要说的有以下几点:

1、unit单元中没有添加status查看状态,我觉得我这里一般通过判断端口来查看redis进程是否正常的。

2、在Execstart中,我是自定义了一个redis的配置文件,并启动的时候指定一下配置文件的绝对路径。

3、在ExecStop中,我用到了-a参数,后面跟的是密码,因为redis的登录密码我已经在配置文件中开启认证了,所以使用redis-cli登录的时候需要指定密码,否则不能关闭redis进程。关于密码的设置我在之前的博客也有可以查看。

不足:

1、unit单元中的路径都是给定的,比如配置文件的路径等,所以移动配置文件的时候需要修改unit

2、密码在配置文件中修改以后,也需要在unit单元中进行修改才可以。这样子造成一些麻烦。

3、没有status状态查看。

 

转载于:https://www.cnblogs.com/FengGeBlog/p/10511078.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值