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日

相关文章

  • 老生常谈mysql event事件调度器(必看篇)

    老生常谈mysql event事件调度器(必看篇) 什么是MySQL事件调度器? MySQL事件调度器是MySQL的一个内置工具,它可以让数据库中的某些操作自动定期执行,比如说定时备份、定期删除过期数据、清理临时表等操作。 事件调度器通过定义事件来实现自动化定期操作,事件主要由下面三个基本元素组成: 事件名称 事件执行时间 事件任务 如何定义事件? 下面是一…

    database 2023年5月22日
    00
  • MySQL 可扩展设计的基本原则

    MySQL 可扩展设计的基本原则: 水平扩展是首要的 在 MySQL 可扩展设计中,水平扩展是首要的。当数据量增加时,增加更多的计算资源是最简单且最有效的方法。因此,应该优先考虑使用分区表、数据切分、读写分离等数据库水平扩展技术来提升系统性能。 示例1:使用分区表 例如,在电商网站中,订单表的数据量会非常大,可以使用 MySQL 5.1 版本之后提供的分区表…

    database 2023年5月19日
    00
  • 如何把本地mysql迁移到服务器数据库

    将本地MySQL数据库迁移到服务器数据库可以通过以下步骤实现: 1. 备份本地MySQL数据库 使用以下命令将本地MySQL数据库备份到本地计算机上: mysqldump -u 用户名 -p 密码 数据库名称 > 导出文件名.sql 2. 将备份的文件上传到服务器 使用以下命令将备份的文件上传到服务器: scp /本地备份文件的路径/导出文件名.sql…

    database 2023年5月22日
    00
  • 深入分析PHP优化及注意事项

    深入分析PHP优化及注意事项 PHP是一种流行的服务器端编程语言,然而,在应用程序较大而复杂的情况下,它的性能可能会受到影响。在本篇文章中,我将介绍一些PHP优化技术和注意事项,帮助你更好地提升PHP应用程序的性能。 1. 使用OPcache OPcache是一个免费的开源PHP缓存扩展,可以在服务器端缓存并预编译PHP脚本。OPcache能够避免每次请求时…

    database 2023年5月21日
    00
  • Laravel框架环境与配置操作实例分析

    Laravel框架环境与配置操作实例分析 Laravel是一款流行的PHP Web框架,拥有良好的文档和社区支持。使用Laravel开发Web应用可以提高开发效率,降低开发难度。本文将讲解Laravel框架的环境与配置操作实例分析。 1. 环境要求 Laravel框架有一定的环境要求,以下是Laravel 8.x的环境要求: PHP版本 >= 7.3.…

    database 2023年5月22日
    00
  • 如何单机部署多个 MySQL 8.0 实例 ?

    在服务器资源有限的情况下,可利用该方案快速搭建各类 mysql 架构方案。各 MySQL 实例共享一个 mysqld 主程序,但各实例数据目录是独立的,存放在不同的文件夹中;好了、废话不多说,直接上干货,具体搭建步骤如下 环境介绍 实例 主机 mysql port mysqlx port datadir mysql1 192.168.31.100 3306 …

    MySQL 2023年4月8日
    00
  • springboot + mybatis-plus实现多表联合查询功能(注解方式)

    下面是详细讲解“springboot + mybatis-plus实现多表联合查询功能(注解方式)”的完整攻略。 1. 简介 Mybatis-plus是一个强大的 ORM 框架,它可以极大地提高我们开发的效率,并且具有更好的性能表现。在多表联合查询的场景中,mybatis-plus的注解方式可以帮助我们快速实现。 2. 实现步骤 2.1. 添加依赖 在pom…

    database 2023年5月22日
    00
  • PHP中的Memcache详解

    PHP中的Memcache详解 什么是Memcache? Memcache是一个开源的高性能分布式内存对象缓存系统,用来加速动态Web应用程序的访问速度,减轻数据库负载。通过让常用数据存在内存中,可以大幅度提高Web应用程序的响应速度。 安装 在Linux或macOS系统中,使用命令行工具(如Terminal)输入以下命令来安装Memcache扩展。 sud…

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