Centos下配置Redis开机启动脚本

下面是 CentOS 下配置 Redis 开机启动脚本的完整攻略。

步骤1:下载并安装 Redis

首先需要下载并安装 Redis,可以到 Redis 官网(https://redis.io/download)下载对应版本的 Redis,解压到指定目录,然后使用 make 命令进行编译和安装即可,具体步骤如下:

# 下载 Redis 5.0.8
wget http://download.redis.io/releases/redis-5.0.8.tar.gz

# 解压
tar -zxvf redis-5.0.8.tar.gz

# 进入解压后的目录
cd redis-5.0.8

# 编译并安装
make && make install

步骤2:创建 Redis 配置文件

接下来需要创建 Redis 的配置文件,可以在 Redis 源码包中找到一个默认的配置文件 redis.conf,可以将其复制到/etc目录下,并进行一些必要的修改,比如修改服务端口号等。具体步骤如下:

# 进入 Redis 目录
cd redis-5.0.8

# 复制配置文件到 /etc 目录下
cp redis.conf /etc/redis.conf

# 修改配置文件,比如修改服务端口号为 6379
vim /etc/redis.conf

# 将以下内容更改为:
# bind 127.0.0.1
# protected-mode yes
# port 6379

步骤3:创建 Redis 启动脚本

Redis 的启动脚本可以自己手动编写,也可以使用系统提供的 init.d 脚本。这里我们使用系统提供的脚本,具体步骤如下:

在 CentOS 中,需要使用 chkconfig 命令开启并管理系统服务,所以需要创建对应的启动脚本 /etc/init.d/redis,将以下代码复制到文件中:

#!/bin/sh
#
# redis - this script starts and stops the redis-server daemon
#
# chkconfig:   - 85 15
# description:  Redis is a persistent key-value database
# processname: redis-server
# config:      /etc/redis.conf
# pidfile:     /var/run/redis.pid

# Source function library.
. /etc/rc.d/init.d/functions

# Source networking configuration.
. /etc/sysconfig/network

# Check that networking is up.
[ $NETWORKING = "no" ] && exit 0

redis="/usr/local/bin/redis-server"
prog=$(basename $redis)

REDIS_CONF_FILE="/etc/redis.conf"

[ -f /etc/sysconfig/redis ] && . /etc/sysconfig/redis

lockfile=/var/lock/subsys/redis

start() {
    [ -x $redis ] || exit 5
    [ -f $REDIS_CONF_FILE ] || exit 6
    echo -n $"Starting $prog: "
    daemon $redis $REDIS_CONF_FILE --daemonize yes
    retval=$?
    echo
    [ $retval -eq 0 ] && touch $lockfile
    return $retval
}

stop() {
    echo -n $"Stopping $prog: "
    killproc $prog -QUIT
    retval=$?
    echo
    [ $retval -eq 0 ] && rm -f $lockfile
    return $retval
}

restart() {
    stop
    start
}

reload() {
    echo -n $"Reloading $prog: "
    killproc $redis -HUP
    RETVAL=$?
    echo
}

force_reload() {
    restart
}

rh_status() {
    status $prog
}

rh_status_q() {
    rh_status >/dev/null 2>&1
}

case "$1" in
    start)
        rh_status_q && exit 0
        $1
        ;;
    stop)
        rh_status_q || exit 0
        $1
        ;;
    restart)
        $1
        ;;
    reload)
        $1
        ;;
    force-reload)
        force_reload
        ;;
    status)
        rh_status
        ;;
    condrestart|try-restart)
        rh_status_q || exit 0
        ;;
    *)
        echo $"Usage: $0 {start|stop|status|restart|condrestart|try-restart|reload|force-reload}"
        exit 2
esac

在执行这个脚本前,需要确保文件有可执行权限。

# 给启动脚本设置可执行权限
chmod +x /etc/init.d/redis

步骤4:添加 Redis 启动设置

启动服务脚本已经准备好了,接下来需要添加到系统启动设置中,并设置启动级别,使 Redis 在系统启动时自动启动,命令如下:

# 添加自定义服务
chkconfig --add redis

# 设定服务启动级别,在3,5级别启动并运行
chkconfig --level 35 redis on

示例1:启动 Redis 并在系统启动时自动启动

执行以下命令启动 Redis 并在系统启动时自动启动:

# 启动 Redis 服务
service redis start

# 查看 Redis 服务状态
service redis status

示例2:停止 Redis 并禁用开机启动

如果想停止 Redis 并禁用开机启动,可以执行以下命令:

# 停止 Redis 服务
service redis stop

# 在系统启动时禁用 Redis 服务
chkconfig --del redis

以上是 CentOS 下配置 Redis 开机启动脚本的完整攻略和两条示例说明。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Centos下配置Redis开机启动脚本 - Python技术站

(0)
上一篇 2023年5月22日
下一篇 2023年5月22日

相关文章

  • ubuntu 16.04 下如何设置root用户初始密码

    在Ubuntu 16.04中,默认情况下是没有root用户的,所有需要先创建root用户,然后再对root用户进行密码设置。 以下是具体步骤: 创建root用户 第一步:切换到sudoers用户 在默认情况下,Ubuntu16.04是没有root用户的。所以我们需要先切换到sudoers用户。 打开终端,运行以下命令: sudo su 然后会提示输入当前用户…

    database 2023年5月22日
    00
  • 解决PL/SQL修改Oracle存储过程编译就卡死的问题

    解决PL/SQL修改Oracle存储过程编译就卡死的问题是一个比较常见的问题,一般是由于存储过程的依赖关系出现问题导致。这里提供一些攻略,供大家参考: 查看存储过程的依赖关系 首先需要查看存储过程的依赖关系,可以使用以下SQL语句来查询: SELECT * FROM user_dependencies WHERE name = ‘存储过程名称’ ORDER …

    database 2023年5月21日
    00
  • 如何创建一个创建MySQL数据库中的datetime类型

    创建MySQL数据库中的datetime类型的完整攻略如下。 步骤一:登录MySQL服务器 首先,需要通过MySQL客户端登录MySQL服务器。使用如下命令: mysql -u username -p 其中,username是你的用户名,执行该命令后会提示输入密码,输入密码后按回车键即可登录。 步骤二:创建数据库 接下来,需要创建一个数据库。使用如下命令: …

    database 2023年5月22日
    00
  • 在Docker中使用MySQL的教程

    下面是Docker中使用MySQL的详细教程攻略。 1. 准备工作 在开始前,请确保您已经在本地计算机上安装了Docker。如果您尚未安装,请前往Docker官网下载并安装Docker。 2. 启动MySQL容器 在Docker中使用MySQL的第一步是启动MySQL容器。启动MySQL容器之前需要准备一个数据目录,用于存储MySQL的数据。 $ mkdir…

    database 2023年5月22日
    00
  • Mybatis插入时返回自增主键方式(selectKey和useGeneratedKeys)

    MyBatis是一个支持自动生成SQL的持久层框架,可以将查询结果映射到Java对象上,而且支持多种自增主键返回方式,本文将重点讲解Mybatis插入时返回自增主键的两种方式:selectKey和useGeneratedKeys。 1. selectKey方式 1.1 selectKey方式概述 selectKey方式是通过SQL语句在执行INSERT命令时…

    database 2023年5月18日
    00
  • linux下mysql数据库单向同步配置方法分享

    下面是“linux下mysql数据库单向同步配置方法分享”的完整攻略。 一、背景介绍 数据库同步是数据库管理中常用的技术,对于一些具有业务拓展需求的网站来说,同步数据库数据是非常重要的。本文介绍在Linux系统下,如何进行MySQL数据库单向同步配置。 二、具体步骤 1. 安装需要的软件 要进行数据库同步,需要在两个数据库之间建立同步关系。建议在一台中央服务…

    database 2023年5月22日
    00
  • .Net Core中使用MongoDB搭建集群与项目实战

    .Net Core中使用MongoDB搭建集群与项目实战 MongoDB是一个高性能、高可用的非关系型数据库,它支持分布式部署,适合大规模的数据存储和处理。在本篇文章中,我们将会介绍如何在.Net Core项目中使用MongoDB并搭建MongoDB集群。 1. 搭建MongoDB集群 要搭建MongoDB集群,我们需要至少3个MongoDB实例。在这里,我…

    database 2023年5月22日
    00
  • ORACLE出现错误1033和错误ORA-00600的解决方法

    ORACLE出现错误1033和错误ORA-00600的解决方法 错误1033的解决方法 当我们在使用Oracle数据库的时候,可能会遇到错误1033。错误1033的提示信息如下所示: ORA-01033: ORACLE initialization or shutdown in progress 这个错误信息常常在连接数据库的时候出现。出现这个错误的原因是因…

    database 2023年5月19日
    00
合作推广
合作推广
分享本页
返回顶部