2024年Redis集群生产环境源码安装,阿里P8大牛亲自教你

本文详细介绍了Java面试中可能涉及的Redis安装步骤,包括GCC编译工具的安装、Redis配置修改、集群配置及与MySQL相关问题。还提供了系统化资料链接供读者深入学习。
摘要由CSDN通过智能技术生成

最后

各位读者,由于本篇幅度过长,为了避免影响阅读体验,下面我就大概概括了整理了

本文已被CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】收录

需要这份系统化的资料的朋友,可以点击这里获取

echo never > /sys/kernel/mm/transparent_hugepage/enabled ,并且将它添加到你的/etc/rc.local中使在 重启后仍然保持生效来修复这个问题。在THP禁用之后Redis必须重启。

四、安装GCC编译工具,不然会有编译不过的问题

yum install gcc g++ gcc-c++ make -y

五、下载、解压、编译安装

su - sw

cd backup

wget http://download.redis.io/releases/redis-4.0.1.tar.gz

tar -xvf redis-4.0.1.tar.gz

cd redis-4.0.1

make

make PREFIX=/usr/users/sw/app/redis install

编译完成,redis已经安装在/usr/users/sw/app/redis/bin下面,几个文件大致作用为

redis‐benchmark:性能测试工具,测试Redis在你的系统及配置下的读写性能

redis‐check‐aof:用于修复出问题的AOF文件

redis‐check‐dump:用于修复出问题的dump.rdb文件

redis‐cli:Redis命令行交互客户端

redis‐sentinel:redis‐server别名

redis‐server:Redis服务器启动程序

六、redis的配置修改

在源码目录中,将配置文件模板redis.conf复制到redis配置文件目录中app/redis/conf/,因为一个虚拟机要启动单个

redis节点,所以配置文件要复制三份,分别用于用于规划的服务器端口号命名区别

mkdir ~/app/redis/conf

cp backup/redis-4.0.1/redis.conf ~/app/redis/conf/redis8601.conf

七、编辑redis8601.conf文件

  1. 设置bind地址为本机IP,&&为本机IP,需要改为其他节点机器可访问的ip,否则创建集群时无法访问对应的端口,无法创建集群

bind 192.168.26.*

  1. 修改daemonize为yes,即以后台程序方式运行

daemonize yes

  1. 修改服务端口

port 8601

  1. 修改pid生成路径

pidfile “/usr/uses/sw/app/redis/run/redis8601.pid”

需要手动创建run目录存放pid路径

mkdir /usr/users/sw/app/redis/run/

5.  修改日志文件的位置

logfile “/applog/redis8601/redis.log”

需要手动创建日志目录

mkdir /applog/redis8601/

6. 修改工作目录,数据文件,append only文件等会在该目录生成

dir “/applog/redisdump”

需要手动创建该目录

mkdir /applog/redisdump

7.  数据文件名

dbfilename “dump8601.rdb”

8.  是否每次更新操作进行日志记录

appendonly yes

文件名设置

appendfilename “appendonly8601.aof”

9.  是否支持集群

cluster-enabled yes

  1. 集群配置文件名

cluster-config-file “nodes-8601.conf”

八、复制redis8601.conf文件为另外两个节点修改

1. cp redis8601.conf redis8602.conf

cp redis8601.conf redis8603.conf

2.统一替换配置文件redis8602.conf和redis8603.conf的8601为8602和8603

sed -i ‘s/8601/8602/g’ redis8602.conf

sed -i ‘s/8601/8603/g’ redis8603.conf

3.要手动创建8602和8603的日志目录

mkdir /applog/redis8602

mkdir /applog/redis8603

九、启动redis各节点服务

1、cd ~/app/redis/bin

./redis-server ~/app/redis/conf/redis8601.conf

./redis-server ~/app/redis/conf/redis8602.conf

./redis-server ~/app/redis/conf/redis8603 .conf

十、脚本启动

mkdir ~/bin

vim redis.sh

#!/bin/bash

case $1 in

start)

cd /usr/users/sw/app/redis/bin

./redis-server /usr/users/sw/app/redis/conf/redis8601.conf

./redis-server /usr/users/sw/app/redis/conf/redis8602.conf

./redis-server /usr/users/sw/app/redis/conf/redis8603.conf

if [ “$?” -eq 0 ];then

ps -ef|grep redis|grep -v grep

echo “redis is started”

else

echo “redis is error”

exit 10

fi

;;

stop)

for pid in ( p s − e f ∣ g r e p r e d i s ∣ g r e p − v " g r e p " ∣ e g r e p − v " (ps -ef|grep redis|grep -v "grep"|egrep -v " (psefgrepredisgrepv"grep"∣egrepv"{0}"|awk -F " " ‘{print $2}’|uniq);do

kill -9 $pid >> /dev/null 2>&1

done

#echo “redis is stopped”

;;

restart)

${0} stop

Ending

Tip:由于文章篇幅有限制,下面还有20个关于MySQL的问题,我都复盘整理成一份pdf文档了,后面的内容我就把剩下的问题的目录展示给大家看一下

如果觉得有帮助不妨【转发+点赞+关注】支持我,后续会为大家带来更多的技术类文章以及学习类文章!(阿里对MySQL底层实现以及索引实现问的很多)

吃透后这份pdf,你同样可以跟面试官侃侃而谈MySQL。其实像阿里p7岗位的需求也没那么难(但也不简单),扎实的Java基础+无短板知识面+对某几个开源技术有深度学习+阅读过源码+算法刷题,这一套下来p7岗差不多没什么问题,还是希望大家都能拿到高薪offer吧。

本文已被CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】收录

需要这份系统化的资料的朋友,可以点击这里获取

本文已被CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】收录

需要这份系统化的资料的朋友,可以点击这里获取

  • 17
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值