Centos7下配置Redis开机自启动

最近在做作业的时候需要用到Redis缓存,由于每次重启服务器都需要重新启动Redis,也是忒烦人,于是就有了这一篇博客,好,废话不多说。

只有两个步骤:

  1. 设置redis.conf中daemonize为yes,确保守护进程开启。
  2. 编写开机自启动脚本 基本原理为:  系统开机启动时会去加载/etc/init.d/下面的脚本,通常而言每个脚本文件会自定义实现程序的启动;若想将新的程序开机自启动,只需在该目录下添加一个自定义启动程序的脚本,然后设置相应规则即可。  如在这里我们在/etc/init.d/下新建一个 redis 的脚本,开机启动时会去加载执行该脚本。
vim /etc/init.d/redis

在该脚本中添加一下内容:

# chkconfig: 2345 10 90  
#redis服务必须在运行级2,3,4,5下被启动或关闭,启动的优先级是90,关闭的优先级是10。
# description: Start and Stop redis   

PATH=/usr/local/bin:/sbin:/usr/bin:/bin  
export PATH 
REDISPORT=6379 #端口号,这是默认的,如果你安装的时候不是默认端口号,则需要修改
EXEC=/usr/local/redis/bin/redis-server  #redis-server启动脚本的位置,你如果忘了可以用find或whereis找到   
REDIS_CLI=/usr/redisbin/redis-cli  #redis-cli客户端启动脚本的位置,你如果忘了可以用find或whereis找到   

PIDFILE=/var/run/redis.pid   #这个也可以用find或whereis找到
CONF="/usr/local/redis/etc/redis.conf"  #redis.conf配置文件的位置,你如果忘了可以用find或whereis找到
AUTH="1234"  

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   
                if [ "$?"="0" ]   
                then   
                        echo "Redis is running..."  
                fi   
                ;;   
        stop)   
                if [ ! -f $PIDFILE ]   
                then   
                        echo "$PIDFILE exists, process is not running."  
                else  
                        PID=$(cat $PIDFILE)   
                        echo "Stopping..."  
                       $REDIS_CLI -p $REDISPORT  SHUTDOWN    
                        sleep 2  
                       while [ -x $PIDFILE ]   
                       do  
                                echo "Waiting for Redis to shutdown..."  
                               sleep 1  
                        done   
                        echo "Redis stopped"  
                fi   
                ;;   
        restart|force-reload)   
                ${0} stop   
                ${0} start   
                ;;   
        *)   
               echo "Usage: /etc/init.d/redis {start|stop|restart|force-reload}" >&2  
                exit 1  
esac

写完后保存退出

设置可执行权限:

chmod 755  
redis

启动测试:

/etc/init.d/redis start

启动成功会提示如下信息:

Starting Redis server...
Redis is running...

使用redis-cli测试:

[root@localhost ~]# /usr/local/redis/bin/redis-cli
127.0.0.1:6379> set foo bar
OK
127.0.0.1:6379> get foo
"bar"
127.0.0.1:6379> exit

设置开机自启动:

chkconfig redis on

关机重启测试:

reboot

开机完之后可以用 redis-cli 测试,或者用 ps -ef | grep redis 看看redis 是否在运行中

本篇博客大部分参考自Linux下Redis开机自启(Centos),感谢原作者的贡献

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏铭毅天下

上线必备 | 高性能ES5.X部署配置清单

| 题记 | 网上当前(截止20170914)流传的各种配置文件普通存在以下问题: 1)版本低,不能和当前版本5.X匹配。 2)5.X的配置本身较1.X,2...

36711
来自专栏编程

单点登录系统实现

单点登录系统实现基于SpringBoot 今天的干货有点湿,里面夹杂着我的泪水。可能也只有代码才能让我暂时的平静。通过本章内容你将学到单点登录系统和传统登录系统...

3017
来自专栏程序员的诗和远方

React-Native For Android 环境搭建及踩坑

安装环境 本文默认以MacOS为系统,毕竟除了用React Native搞Android,你也会想用它搞iOS。 首先当然是Android的环境搭建,这里还是推...

3006
来自专栏吴伟祥

IDEA中的HTTP Client Editor测试API

在前后端分离项目,前后端通过api进行通信。如果用postman免费版进行api测试的话,由于无法保存测试脚本到文件,不方便前端查看。

793
来自专栏黑泽君的专栏

day67_Redis学习笔记_03

  上边的配置说明当前该【从redis服务器】所对应的【主redis服务器】的IP是192.168.5.128,端口是6379。

803
来自专栏Android群英传

Android Studio集成Bug管理系统

952
来自专栏技术小讲堂

ASP.NET AJAX(11)__ScriptManagerUpdatePanel的支持成员功能控制成员脚本控件支持成员ScriptMode和ScriptPathLoadScriptsBeforeU

ScriptManager的作用,这个不言而喻,它是整个的ASP.NET AJAX的核心 UpdatePanel的支持成员 static void Regist...

3016
来自专栏黑泽君的专栏

安装最新版本的Oracle公司的虚拟机软件 VirtualBox + 安装虚拟机 Windows XP 系统 + 安装 Oracle 11g 软件 + 出现 ERROR: ORA-12541: TNS

  VirtualBox的下载链接:https://www.virtualbox.org/wiki/Downloads

1121
来自专栏IT探索

linux命令使用方法

在虚拟机软件的菜单栏中一次选择“虚拟机->设置->选项->共享文件夹”,在右侧选启用或在下次电源关闭或挂起前启用,点击下面的添加,下一步,在主机路径中选中win...

962
来自专栏吴柯的运维笔记

实例:Jenkins构建项目参数设置教程

“ 老板: 你会Jenkins? 我会。 先加薪两千吧。 ” ---《吴柯的运维笔记》 01 项目构建 Jenkins系统管理 --点击系统管理-->进入管...

4198

扫码关注云+社区