# 源代码编译安装redis ## 一、系统环境 * OS: Openeuler 24.03 LTS * Redis版本:7.2.12 * 架构:哨兵模式 * 目录规划: * /data/redis/DATA * /data/redis/LOGS ## 二、系统配置 ### 2.1 前置配置 1、系统内核 ``` echo 65535 > /proc/sys/net/core/somaxconn echo 1 > /proc/sys/vm/overcommit_memory sysctl -w net.core.somaxconn=65535 sysctl -w vm.overcommit_memory=1 echo "net.core.somaxconn = 65535" | tee -a /etc/sysctl.conf echo "vm.overcommit_memory = 1" | tee -a /etc/sysctl.conf ``` 2、安装系统依赖包 ``` yum -y install yum install make gcc gcc-c++ ``` 3、创建用户 ``` id redis || useradd -u 6379 redis -s /sbin/nologin -M ``` 4、创建数据目录 ``` install -d /data/redis/DATA /data/redis/LOGS -o redis -g redis ``` ### 2.2 Redis 编译安装 1、下载 ``` export version=7.2.12 wget http://download.redis.io/releases/redis-${version}.tar.gz tar axvf redis-${version}.tar.gz cd redis-${version} ``` 2、编译安装 ``` make distclean make BUILD_TLS=no -j $(nproc --all) make PREFIX=/usr/local/redis-${version} install cd /usr/local/ && ln -svf redis-${version} redis ``` 默认使用jemalloc分配器,所以先安装jemalloc内存管理器 ``` cd deps/jemalloc ./configure && make -j 8 && make install ``` 3、完成后使用以下检测版本 ``` ./redis-server --version Redis server v=7.2.12 sha=00000000:0 malloc=jemalloc-5.3.0 bits=64 build=67aa91aee02876f6 ``` 4、创建系统环境变量 ``` cat >/etc/profile.d/redis.sh</etc/redis.conf </usr/lib/systemd/system/redis.service</etc/redis-sentinel.conf</usr/lib/systemd/system/redis-sentinel.service<