Redis环境的安装(源码安装),主要分为单机安装与集群安装,无论是单机安装还是集群安装,Redis本身的依赖是必须要有的,本文所采用的Redis版本是redis-5.0.3,所需要的依赖如下:

cpp-4.8.5-36.el7.x86_64.rpm
gcc-4.8.5-36.el7.x86_64.rpm
glibc-2.17-260.el7.x86_64.rpm
glibc-common-2.17-260.el7.x86_64.rpm
glibc-devel-2.17-260.el7.x86_64.rpm
glibc-headers-2.17-260.el7.x86_64.rpm
kernel-headers-3.10.0-957.1.3.el7.x86_64.rpm
libgcc-4.8.5-36.el7.x86_64.rpm
libgomp-4.8.5-36.el7.x86_64.rpm
libmpc-1.0.1-3.el7.x86_64.rpm
mpfr-3.1.1-4.el7.x86_64.rpm

  

其中,在安装时可以查看对应的依赖是否已经安装,查看方式rpm –qa |grep {rpmName}。

检查完依赖,如果依赖不存在,则进行安装,如果安装过程中出现依赖安装不上,可执行rpm –Uvh {rpmName} –-nodeps –force命令进行安装。

单节点环境安装:

解压压缩包, tar zxvf redis-5.0.3.tar.gz -C /opt/sourceware/目录下;
进入目录编译:cd /opt/sourceware/redis-*
编译:make
进入src目录进行安装:make install
修改redis配置文件redis.conf:
bind地址修改为实际地址;
将daemonize属性修改为yes(表名在后台运行)
port端口修改;
protected-mode修改为no(关闭保护模式)
requirepass密码设置
启动redis:redis-server &
进入客户端:redis-cli
重启:redis-cli shutdown

集群环境安装:集群环境采用redis本身集群机制,建议采用3+台机器,具体如下:

环境规划:

机器1:192.168.1.1:8001、192.168.1.1:8002
机器2:192.168.1.1:8003、192.168.1.1:8004
机器3:192.168.1.1:8004、192.168.1.1:8006

应用安装:

解压压缩包, tar zxvf redis-5.0.3.tar.gz -C /opt/sourceware/目录下;
进入目录编译:cd /opt/sourceware/redis-*
编译:make
进入src目录进行安装:make install
每台编译安装结束之后,在安装目录创建集群目录:
机器1:mkdir –p /opt/sourceware/redis-*/ redis_cluster/8001/
机器1:mkdir –p /opt/sourceware/redis-*/ redis_cluster/8002/
机器2:mkdir –p /opt/sourceware/redis-*/ redis_cluster/8003/
机器2:mkdir –p /opt/sourceware/redis-*/ redis_cluster/8004/
机器3:mkdir –p /opt/sourceware/redis-*/ redis_cluster/8005/
机器3:mkdir –p /opt/sourceware/redis-*/ redis_cluster/8006/
并将对应的redis.conf文件copy到redis_cluster/800*/中

修改其中的信息:

port  8001 //端口按规划修改
bind 本机ip //默认ip为127.0.0.1 需要改为其他节点机器可访问的ip 否则创建集群时无法访问对应的端口,无法创建集群
daemonize yes //redis后台运行
pidfile /var/run/redis_8001.pid //pidfile文件对应8001
cluster-enabled yes //开启集群 把注释#去掉
cluster-config-file nodes_8001.conf //集群的配置 配置文件首次启动自动生成 8001
cluster-node-timeout 15000 //请求超时 默认15秒,可自行设置
appendonly yes //aof日志开启 有需要就开启,它会每次写操作都记录一条日志 

创建集群:

redis-cli --cluster create 192.168.1.1:8001 192.168.1.1:8002 192.168.1.2:8003 192.168.1.2:8004 192.168.1.3:8005 192.168.1.3:8006 --cluster-replicas 1

创建成功后,启用节点密码及集群密码,密码须一致,修改redis.conf

masterauth passwd123

requirepass passwd123

重启redis应用,并检查集群状态:

执行:redis-cli -c -p 8001 -h 127.0.0.1
执行:cluster info
执行:cluster nodes

redis开机自启:编写redis脚本

#!/bin/bash

# chkconfig: 2345 80 90

#

# Simple Redis init.d script conceived to work on Linux systems

# as it does use of the /proc filesystem.

REDIS_PORT1=8001

REDIS_PORT2=8002

HOST_IP=192.168.1.1

PASS_WORD=Pass@2020

BIN_DIR=/usr/local/bin

COF_DIR=/opt/sourceware/redis-5.0.3/redis_cluster

SER_EXEC=$BIN_DIR/redis-server

CLI_EXEC=$BIN_DIR/redis-cli

PID_FILE1=/var/run/redis_${REDIS_PORT1}.pid

PID_FILE2=/var/run/redis_${REDIS_PORT2}.pid

CONF1=$COF_DIR/${REDIS_PORT1}/redis.conf

CONF2=$COF_DIR/${REDIS_PORT2}/redis.conf

case "$1" in

    start)

        if [ -f $PID_FILE1 ]

        then

            echo "$PID_FILE1 exists, process is already running or crashed"

        else

            echo "Starting Redis cluster server..."

           cd $COF_DIR/${REDIS_PORT1}

            $SER_EXEC $CONF1 &

            echo "启动成功..."

        fi

       if [ -f $PID_FILE2 ]

        then

            echo "$PID_FILE2 exists, process is already running or crashed"

        else

            echo "Starting Redis cluster server..."

           cd $COF_DIR/${REDIS_PORT2}

            $SER_EXEC $CONF2 &

            echo "启动成功..."

        fi

        ;;

    stop)

        if [ ! -f $PID_FILE1 ]

        then

            echo "$PID_FILE1 does not exist, process is not running"

        else

            PID=$(cat $PID_FILE1)

           echo "Stopping ..."

           $CLI_EXEC -p $REDIS_PORT1 -h $HOST_IP -a $PASS_WORD shutdown

           while [ -x /proc/${PID} ]

           do

              echo "Waiting for Redis cluster to shutdown ..."

              sleep 1

           done

           echo "Redis cluster stopped"

        fi

       if [ ! -f $PID_FILE2 ]

        then

            echo "$PID_FILE2 does not exist, process is not running"

        else

           PID=$(cat $PID_FILE2)

           echo "Stopping ..."

           $CLI_EXEC -p $REDIS_PORT2 -h $HOST_IP -a $PASS_WORD shutdown

           while [ -x /proc/${PID} ]

           do

              echo "Waiting for Redis cluster to shutdown ..."

              sleep 1

           done

           echo "Redis cluster stopped"

        fi

        ;;

    *)

        echo "Please use start or stop as first argument"

        ;;

esac

安装脚本:

1.将该文件放在/etc/init.d/目录下
2.修改该文件中的端口、IP、密码
3.执行:chkconfig --add redis
4.执行:chkconfig redis on
5.验证:service redis start|stop

附带常用命令:

redis-cli -c -p 8001 -h 127.0.0.1 -a Password@2020
cluster nodes
cluster info
redis-cli -a Password@2020 --cluster check ip:port
redis-cli -a Password@2020 --cluster fix ip:port
redis-cli -a Password@2020 --cluster add-node ip:port

redis环境的安装的更多相关文章

  1. tomcat+java+redis环境linux安装

    最近要加一个环境测试,自力更生,丰衣足食,记下来下次安装环境速度快点 java jdk-1.80_131 64位 这个jdk 对于初次下载的人要注意,oracel现在不登录不让下载,而注册用户时页面无 ...

  2. redis教程-redis环境搭建安装(qq:1324981084)

    需要整套redis缓存高可用集群教学视频的加qq:1324981084,本套视频从安装到集群的搭建和源码的解析,从零基础讲解. 1.利用命令将redis下载到/usr/local/文件夹下: wget ...

  3. Redis - 环境的安装配置

    Redis 下载安装步骤: 下载 redis 源码: [huey@huey-K42JE ~]$ wget http://download.redis.io/releases/redis-x.y.z.t ...

  4. 在windows环境下安装redis和phpredis的扩展

    在windows环境下安装redis和phpredis的扩展 1.首先配置php: 需要在windows的集成环境中找到php的扩展文件夹,ext,然后在网上寻找自己的php对应的.dll文件 比如说 ...

  5. Redis学习笔记一(Redis的详细安装及Linux环境变量配置和启动)

     Redis Redis是一个开源的使用ANSI C语言编写.支持网络.可基于内存亦可持久化的日志型.Key-Value数据库,并提供多种语言的API. 我使用的是下面这个版本: 若没有资源的话,我在 ...

  6. centos 7使用docker安装lnmp和redis环境

    #================Docker基础操作========================== #启动docker服务service docker start#搜索可用docker镜像#h ...

  7. 在linux环境下安装redis并且搭建自己的redis集群

    此文档主要介绍在linux环境下安装redis并且搭建自己的redis集群 搭建环境: ubuntun 16.04 + redis-3.0.6 本文章分为三个部分:redis安装.搭建redis集群 ...

  8. Windows环境下安装redis及PHP Redis扩展

    附带管理工具安装教程 安装环境 WNMP环境 参考教程:WIN10下WNMP开发环境部署 安装windows的redis服务 安装包下载 选择msi安装包下载并安装,下载可能会有点慢,请自行使用梯子. ...

  9. centos / Linux 服务环境下安装 Redis 5.0.3

    原文:centos / Linux 服务环境下安装 Redis 5.0.3 1.首先进入你要安装的目录 cd /usr/local 2.下载目前最新稳定版本 Redis 5.0.3 wget http ...

  10. Redis总结(九)Linux环境如何安装redis

    以前总结Redis 的一些基本的安装和使用,由于是测试方便,直接用的window 版的reids,并没有讲redis在linux下的安装.今天就补一下Linux环境如何安装redis. 大家可以这这里 ...

随机推荐

  1. ChatGPT还是有点东西的-public static <T> List<T> Arrays.asList(T... a) {...}

    背景 业务开发需要判断业务状态是否在30.40.50.60的集合内,所以写了以下代码 int[] inLiq = {30,40,50,60}; return Arrays.asList(inLiq). ...

  2. Linux进程间通信-管道(pipe)

    本系列文章主要是学习记录Linux下进程间通信的方式. 常用的进程间通信方式:管道.FIFO.消息队列.信号量以及共享存储. 参考文档:<UNIX环境高级编程(第三版)> 参考视频:Lin ...

  3. FlashDuty Changelog 2023-10-30 | 告警路由与 Slack 应用

    FlashDuty:一站式告警响应平台,前往此地址免费体验! 告警路由 什么是告警路由? FlashDuty已经与Zabbix.Prometheus等监控系统实现无缝集成,通过一个简单的webhook ...

  4. nordic的nrf52系列——ADC在使用时如何校准增益误差(基于SDK)

    简介:ADC在实际使用的时候都要进行误差校准,那Nordic的nrf52系列如何进行校准,如果不校准又有什么影响尼,接下来我将通过实验进行测试,验证不校准和校准的影响(本测试的基础是,默认输入阻抗和采 ...

  5. maven依赖关系及打包及阿里云仓库地址

    https://developer.aliyun.com/mvn/search 阿里云仓库地址,可以搜索 <repositories> <repository> <id& ...

  6. ODPS 不用循环生成连续日期

    生成 20230801 ~ 20230831之间的每一天的sql代码怎么写? 只要一行代码. 一行代码: select TO_CHAR(DATEADD(TO_DATE(bizdate,'yyyymmd ...

  7. 高通Android UEFI XBL 代码流程分析

    高通Android UEFI XBL 代码流程分析 背景 之前学习的lk阶段点亮LCD的流程算是比较经典,但是高通已经推出了很多种基于UEFI方案的启动架构. 所以需要对这块比较新的技术进行学习.在学 ...

  8. 为给git设置代理

    为给git设置代理 通过软件形式为git设置代理 命令(端口改为自己的端口): git config --global https.proxy http://127.0.0.1:1083 git co ...

  9. 卷积神经网络中nn.Conv2d()和nn.MaxPool2d()以及卷积神经网络实现minist数据集分类

    卷积神经网络中nn.Conv2d()和nn.MaxPool2d() 卷积神经网络之Pythorch实现: nn.Conv2d()就是PyTorch中的卷积模块 参数列表 参数 作用 in_channe ...

  10. TI AM64x工业开发板硬件说明书(双核ARM Cortex-A53 + 单/四核Cortex-R5F + 单核Cortex-M4F,主频1GHz)

    前  言 本文主要介绍TL64x-EVM评估板硬件接口资源以及设计注意事项等内容. 创龙科技TL64x-EVM是一款基于TI Sitara系列AM64x双核ARM Cortex-A53 + 单/四核C ...