首页 > 数据库 >redis 安装教程

redis 安装教程

时间:2024-01-22 10:31:43浏览次数:25  
标签:bin 教程 local redis usr install 安装 REDIS

一、初始化环境

  • 创建redis运行时的用户和组
$ groupadd redis
$ useradd -g redis redis -s /sbin/nologin -M
  • 初始化数据目录
$ rm -rf /data/redis
$ mkdir -pv /data/redis
$ chown -R redis:redis /data/redis
  • 初始化日志目录
$ mkdir -pv /data/logs/redis
$ chown -R redis:redis /data/logs/redis
  • 初始化redis家目录
$ mkdir -pv /usr/local/redis/{bin,etc}

二、安装

  • 下载redis源码包
$ cd ~
$ wget http://10.0.16.133/src/x86_64/redis/redis-6.0.8.tar.gz
  • 安装编译时依赖
$ yum install -y gcc clang make
  • 编译
$ tar -zxvf redis-6.0.8.tar.gz
$ cd redis-6.0.8
$ CC=clang make
  • 安装
$ install -p -D -m 0755 src/redis-benchmark /usr/local/redis/bin/
$ install -p -D -m 0755 src/redis-check-aof /usr/local/redis/bin/
$ install -p -D -m 0755 src/redis-check-rdb /usr/local/redis/bin/
$ install -p -D -m 0755 src/redis-cli /usr/local/redis/bin/
$ install -p -D -m 0755 src/redis-sentinel /usr/local/redis/bin/
$ install -p -D -m 0755 src/redis-server /usr/local/redis/bin/
$ install -p -D -o redis redis.conf /usr/local/redis/etc/
$ ln -svf /usr/local/redis/bin/redis-cli /usr/bin/redis-cli

三、配置

  • 生成redis访问密码
$ export REDIS_PASS=$(head -c 1000 /dev/urandom | tr -dc a-zA-Z0-9 | head -c 16)
  • 修改配置
$ export REDIS_HOME=/usr/local/redis
$ sed -i s@'^# requirepass .*'@"requirepass $REDIS_PASS"@ $REDIS_HOME/etc/redis.conf
$ sed -i s@'^logfile .*'@"logfile /data/logs/redis/redis.log"@ $REDIS_HOME/etc/redis.conf
$ sed -i s@'^dir .*'@"dir /data/redis"@ $REDIS_HOME/etc/redis.conf
$ sed -i s@'^pidfile .*'@"pidfile /data/redis/redis_6379.pid"@ $REDIS_HOME/etc/redis.conf
$ sed -i s@'^bind .*'@"bind 0.0.0.0"@ $REDIS_HOME/etc/redis.conf

四、创建redis-shutdown脚本

  • 创建文件/usr/local/redis/bin/redis-shutdown,内容如下
#!/bin/bash
#
test x"$REDIS_DEBUG" != x && set -x

REDIS_CLI=/usr/local/redis/bin/redis-cli

SERVICE_NAME="$1"
if [ -z "$SERVICE_NAME" ]; then
  SERVICE_NAME=redis
fi

CONFIG_FILE="/etc/$SERVICE_NAME.conf"

HOST=`awk '/^[[:blank:]]*bind/ { print $2 }' $CONFIG_FILE | tail -n1`
PORT=`awk '/^[[:blank:]]*port/ { print $2 }' $CONFIG_FILE | tail -n1`
PASS=`awk '/^[[:blank:]]*requirepass/ { print $2 }' $CONFIG_FILE | tail -n1`
SOCK=`awk '/^[[:blank:]]*unixsocket\s/ { print $2 }' $CONFIG_FILE | tail -n1`

HOST=${HOST:-127.0.0.1}
if [ "$SERVICE_NAME" = redis ]; then
   PORT=${PORT:-6379}
else
   PORT=${PORT:-26739}
fi

[ -z "$PASS" ] || ADDITIONAL_PARAMS="-a $PASS"

if [ -e "$SOCK" ] ; then
$REDIS_CLI -s $SOCK $ADDITIONAL_PARAMS shutdown
else
$REDIS_CLI -h $HOST -p $PORT $ADDITIONAL_PARAMS shutdown
fi
  • 为脚本添加执行权限
$ chmod +x /usr/local/redis/bin/redis-shutdown

五、系统服务

  • 创建系统服务文件
$ cat >/usr/lib/systemd/system/redis.service<<EOF
[Unit]
Description=Redis persistent key-value database
After=network.target
After=network-online.target
Wants=network-online.target

[Service]
ExecStart=/usr/local/redis/bin/redis-server /usr/local/redis/etc/redis.conf --supervised systemd
ExecStop=/usr/local/redis/bin/redis-shutdown
Type=simple
User=redis
Group=redis
RuntimeDirectory=redis
RuntimeDirectoryMode=0755
LimitNOFILE=10240

[Install]
WantedBy=multi-user.target
EOF
  • 重载systemd
$ systemctl daemon-reload
  • 启动redis
$ systemctl start redis
  • 添加到开机自启动
$ systemctl enable redis

六、验证

$ redis-cli -a $REDIS_PASS
Warning: Using a password with '-a' or '-u' option on the command line interface may not be safe.
127.0.0.1:6379> info
# Server
redis_version:6.0.8
redis_git_sha1:00000000
redis_git_dirty:0
....

标签:bin,教程,local,redis,usr,install,安装,REDIS
From: https://blog.51cto.com/u_64214/9361764

相关文章

  • 面试官:Redis持久化能关吗?怎么关?
    数据持久化是指将数据从内存中,保存到磁盘或其他持久存储介质的过程,这样做的目的是为了保证数据不丢失。而Redis的持久化功能默认是开启的,这样做的目的也是为了保证程序的稳定性(防止缓存雪崩、缓存击穿等问题)和数据不丢失。Redis持久化能关吗?怎么关?Redis持久化默认是开启的,......
  • STM32CubeMX教程21 CAN - 双机通信
    1、准备材料开发板(正点原子stm32f407探索者开发板V2.4)STM32CubeMX软件(Version6.10.0)野火DAP仿真器keilµVision5IDE(MDK-Arm)ST-LINK/V2驱动CH340GWindows系统驱动程序(CH341SER.EXE)XCOMV2.6串口助手2、实验目标使用STM32CubeMX软件配置两台STM32F407开发板的CAN1模块......
  • Elastic学习之旅 (2) 快速安装ELK
    大家好,我是Edison。上一篇:初识ElasticSearchElasticSearch的安装方式ElasticSearch可以有多种安装方式,比如直接下载安装到宿主机进行运行,也可以通过docker的方式运行,完全取决我们的用途。这里,我们只是为了学习和练习,通过docker方式运行即可。Docker安装的前置条件这里为了成......
  • 2024最新版Xmind for Windows下载安装教程
    软件介绍:LifetimeXMindforWindows:一款全新的思维导图软件如果你是一个喜欢用思维导图来组织思路、管理项目、记录灵感的人,那么你一定不会陌生XMind这个品牌。XMind是一款在思维导图领域表现出色的软件,它拥有遍布全球的大量用户,不仅为用户提供创建思维导图的功能,而且还提供开源。......
  • 无涯教程-CodeIgniter - MVC框架
    CodeIgniter基于模型-视图-控制器(MVC)开发模式。MVC是一种将应用程序逻辑与表示分离的软件方法。Model    - 代表数据模型,主要跟数据库打交道,实现无涯教程的CURD封装。View      - 是前台展示给用户看的界面。Controller - Model和View的桥梁......
  • django使用redis集群、连接池、MySQL连接池
    redis的相关设置CACHES={"default":{"BACKEND":"django_redis.cache.RedisCache","LOCATION":["redis://127.0.0.1:6379/1","redis://127.0.0.1:6380/1",#...],"OPTIONS":{"CLIENT_......
  • 2024最新版Xmind for MAC下载安装教程
    软件介绍XMindforMac24.0内置激活版是一款专业的思维导图软件,本版本是永久激活版,可以帮助用户更好地组织思维、管理信息、规划项目和解决问题。它提供了丰富的模板和工具,使用户能够创建美观、清晰、易于理解的思维导图。2024XmindforMac下载链接:链接:https://pan.xunlei.com/s......
  • 无涯教程-CodeIgniter - 应用结构
    下面显示了CodeIgniter应用程序的体系结构。如图所示,每当对CodeIgniter发出请求时,它都会首先进入index.php页面。在第二步中,路由将决定是将此请求传递给步骤3进行缓存还是将此请求传递给步骤4进行安全检查。如果请求的页面已经在缓存中,则路由会将请求传递到步骤3,响应将返回......
  • Cordova环境安装与配置
    Node不建议使用太高的版本,18.19.0就足够了nvmlistavailablenvminstall18.19.0nvmuse18.19.0nvmlsnpmconfiggetregistryhttps://registry.npmmirror.com/ npmconfigsetregistryhttps://registry.npm.taobao.orgnpmconfiggetregistry npminstall-gcord......
  • Ubuntu一键安装/卸载docker和docker compose,可指定版本或安装最新版本。
    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档@目录前言一、docker是什么?二、dockercompose是什么?三、安装步骤1.Ubuntu安装脚本2.生成脚本3.启动和验证四、卸载步骤1.Ubuntu卸载脚本2.保存文件后设置执行权限3.运行文件4.验证是否删除成功CentOS安装脚本卸载......