当前位置: 首页 > news >正文

linux下的Redis的编译安装与配置

配合做开发经常会用到redis,整理下编译安装配置过程,仅供参考!

--------------------------------------Redis的安装与配置--------------------------------------

下载 wget https://download.redis.io/releases/redis-6.2.6.tar.gz

tar -zxvf redis-6.2.6.tar.gz

编译环境依赖:

gcc --version # 安装命令

yum install -y gcc tcl

遇到tcl安装包找不到的情况:

wget http://mirror.centos.org/centos/7/os/x86_64/Packages/tcl-8.5.13-8.el7.x86_64.rpm

如果网络上找不到的话,可在 光盘目录下的Packages下找到 tcl-8.5.13-8.el7.x86_64.rpm

(很多人只知道在网上找,其实,你在你的安装盘.iso的扩展程序库里面基本都能找到,而且是直接匹配当前操作系统的各种软件,直接rpm就能装来用,而且肯定匹配版本。我写这篇文章基本就是为了这句话的)

进行手动安装:

rpm -ivh tcl-8.5.13-8.el7.x86_64.rpm


--------------------------------------Redis编译安装及配置--------------------------------------

进入源码目录:cd redis-6.2.6

# 编译源码 

make

# 安装到指定目录(关键步骤 /usr/local/redis )

make PREFIX=/usr/local/redis install

将 Redis 的可执行文件路径添加到 PATH 环境变量:

echo 'export PATH=$PATH:/usr/local/redis/bin' >> ~/.bashrc

source ~/.bashrc

--------------------------------------配置redis.conf--------------------------------------

到redis源码目录下

cp /home/tools/redis-6.2.6/redis.conf /usr/local/redis/bin/redis.conf

修改配置:

# 确保以下配置正确 

daemonize yes

# 必须为 yes(systemd 不依赖此参数但避免冲突)

dir /usr/local/redis/data # 数据目录路径必须存在且可写

logfile "/usr/local/redis/logs/redis.log" # 日志路径必须存在

bind 0.0.0.0 # 若需远程访问需解除注释

protected-mode no # 若需远程访问需关闭

创建redis用户和组:

sudo groupadd redis

useradd -s /sbin/nologin -M redis

# 创建不可登录的mysql用户设置权限

# 确认 /usr/local/redis 目录所有权 

chown -R redis:redis /usr/local/redis # 确认数据和日志目录权限

mkdir -p /usr/local/redis/logs

mkdir -p /usr/local/redis/data

各种权限必须到位,不然就这个写不进去那个无法记录:

chown redis:redis /usr/local/redis/logs

chmod 755 /usr/local/redis/logs

chmod 644 /usr/local/redis/logs/redis.log

chown redis:redis /usr/local/redis/data

chmod 755 /usr/local/redis/data

chmod 755 /usr/local/redis

chmod 755 /usr/local/redis/data


--------------------------------------外部工具访问的防火墙设置--------------------------------------

打开防火墙6379端口,供外界访问,如果只内部访问可以不用管:

[root@localhost redis]# firewall-cmd --list-ports

[root@localhost redis]# firewall-cmd --zone=public --add-port=6379/tcp --permanent

success

 [root@localhost redis]# firewall-cmd --reload

Success

永久开放某个端口例如:xxxxx端口

[root@localhost ~]# sudo firewall-cmd --permanent --add-port=xxxxx/tcp

success

[root@localhost ~]# sudo firewall-cmd --reload

Success


测试redis运行情况:

redis-cli shutdown

redis-cli ping

redis-server

-----------------------------------------启动并设为开机启动------------------------------------------------------

创建 Systemd 服务文件 /etc/systemd/system/redis.service:内容如下

[Unit]

Description=redis-server

After=network.target

[Service]

Type=forking

ExecStart=/usr/local/redis/bin/redis-server /usr/local/redis/conf/redis.conf

PrivateTmp=true

[Install]

WantedBy=multi-user.target

------------------------------------------------------------------------------------------------

重新加载配置:

systemctl daemon-reload

设置开机启动

systemctl enable redis.service

systemctl stop redis

systemctl start redis

systemctl status redis


http://www.xdnf.cn/news/323893.html

相关文章:

  • 夸克网盘链接失效检测工具
  • 多模态大语言模型arxiv论文略读(六十三)
  • 分区器(2)
  • 【Python】通过`Editable Install`模式详解,解决Python开发总是import出错的问题
  • spring ioc实现原理
  • Linux NVIDIA 显卡驱动安装指南(适用于 RHEL/CentOS)
  • 低代码 x AI,解锁数智化应用的创新引擎
  • Spark-Core(RDD行动算子)
  • C++回调函数学习
  • C++回顾 Day5
  • VRM Add-on for Blender 学习笔记
  • 如何测试 esp-webrtc-solution_solutions_doorbell_demo 例程?
  • C++ 继承
  • 文章记单词 | 第68篇(六级)
  • Synthetic Data Kit:LLM微调的语料提炼方案
  • iPhone 和 Android 在日期格式方面的区别
  • 前端日常 · 移动端网页调试
  • c++混淆工具Hikari-LLVM15-llvm-18.1.8rel编译安装
  • Android 蓝牙开发调试总结
  • 多模态学习(一)——从 Image-Text Pair 到 Instruction-Following 格式
  • Java学习手册:数据库事务相关知识
  • 护照阅读器简介
  • 算法导论第7章思考题
  • 16.Three.js 中的 RectAreaLight 全面详解 + Vue 3 实战案例
  • 动态规划之01背包——三道题助你理解01背包
  • 深入浅出之FPN (Feature Pyramid Networks for Object Detection)
  • vue3 element-plus 输入框回车跳转页面问题处理
  • 拒绝服务攻击(DoS/DDoS/DRDoS)详解:洪水猛兽的防御之道
  • 嵌入式学习--江协51单片机day2
  • 基于英特尔 RealSense D455 结构光相机实现裂缝尺寸以及深度测量