CentOS 安装Redis

1. 安装 Redis

安装 EPEL 仓库(对于 CentOS/RHEL 系统):

首先安装 EPEL 仓库,因为 Redis 存在于 EPEL 仓库中:

yum install epel-release
安装 Redis 数据库:
yum install redis

2. 修改 Redis 配置文件

Redis 的配置文件位于 /etc/redis.conf,你需要根据实际需求进行修改。

启动配置:
  • 设置密码
    Redis 需要通过密码进行保护,防止未经授权的访问。找到 requirepass 配置项,或者直接添加设置密码:

    requirepass your_password_here
    
  • 允许远程连接
    默认情况下,Redis 只允许本地连接(bind 127.0.0.1)。为了支持远程连接,需要修改配置:

    • 注释掉 bind 127.0.0.1,让 Redis 接受所有 IP 地址的连接:

      #bind 127.0.0.1
      
    • 如果你只想允许特定 IP 访问 Redis,可以像这样设置:

      bind 0.0.0.0
      # 或者指定特定的 IP 地址,如:
      # bind 192.168.1.100
      
  • 后台运行 Redis
    Redis 默认是前台运行的,建议在生产环境中将其配置为后台运行。将 daemonize 设置为 yes

    daemonize yes
    
  • 优化内存配置
    Redis 是一个内存数据库,因此合理的内存管理配置至关重要。你可以根据系统的内存容量调整 Redis 的内存使用策略。例如:

    • 设置最大内存使用量:

      maxmemory 2gb
      
    • 设置内存溢出策略(例如,当达到最大内存时,Redis 会删除最不常用的键):

      maxmemory-policy allkeys-lru
      
  • 配置持久化
    Redis 提供了两种持久化机制:RDB 和 AOF。根据你的需求选择:

    • RDB 持久化:适用于需要定期保存数据的场景。
    • AOF 持久化:适用于需要频繁保存数据的场景。

    在配置文件中,确保启用了 RDB 或 AOF 持久化:

    save 900 1       # 如果900秒内有至少1个键被修改,保存数据
    appendonly yes   # 启用 AOF 持久化
    
配置完成后,保存并退出编辑器(在 vim 中按 Esc,然后输入 :wq 保存并退出)。

3. 启动 Redis 服务

Redis 配置修改完成后,需要启动 Redis 服务:

redis-server /etc/redis.conf &
启动/停止 Redis:
  • 启动 Redis:

    service redis start
    
  • 停止 Redis:

    service redis stop
    
  • 查看 Redis 服务状态:

    service redis status
    
查看 Redis 进程:
ps -ef | grep redis

4. 防火墙和安全设置

配置防火墙:

确保 Redis 端口(默认是 6379)可以通过防火墙访问。

  • CentOS/RHEL 防火墙配置:
    firewall-cmd --zone=public --add-port=6379/tcp --permanent
    firewall-cmd --reload
    
安全性加强:
  • 使用密码保护:如前所述,设置 requirepass 可以防止未经授权的访问。
  • 限制访问源 IP:通过配置 bind 来限制允许连接的 IP 地址。你可以将 bind 设置为特定的 IP 地址或使用防火墙进行 IP 限制。
  • 关闭 protected-mode:如果启用了 protected-mode,Redis 会保护你不被暴露在公网环境下。在生产环境中,通常会将其禁用:
    protected-mode no
    
使用 Redis 配置的安全最佳实践:
  • 不要将 Redis 直接暴露在互联网上,最好通过 VPN 或使用内网通信。
  • 为每个 Redis 实例配置复杂的密码,尤其是在生产环境中。
  • 定期检查 Redis 配置文件,确保没有配置项被不小心泄露。

5. Redis 客户端(Windows)

对于 Windows 用户,可以选择以下客户端工具:

Redis Desktop Manager(RDM)
  • 下载链接:Redis Desktop Manager
    • 这是一个图形化管理工具,可以帮助你更方便地与 Redis 进行交互。
Another Redis Desktop Manager(ARDM)
  • 下载链接:Another Redis Desktop Manager
    • 另一个流行的 Redis 客户端,适用于多平台,简单易用。

6. 常见问题与优化

远程连接问题:
  • 确认 Redis 配置:确保 Redis 配置文件中的 bind 设置正确,并且防火墙已开放 6379 端口。
  • 检查密码:如果启用了密码保护,连接时需要使用正确的密码:
    redis-cli -h <IP_ADDRESS> -p 6379 -a <password>
    
性能优化:
  • 调整最大内存使用量:Redis 是一个内存数据库,可以通过调整 maxmemory 配置来限制 Redis 占用的最大内存,以避免占满系统内存。
  • 内存溢出策略:配置 maxmemory-policy 来决定 Redis 在达到最大内存限制时如何处理数据。常用的策略有 allkeys-lru(最少使用的键会被删除)和 volatile-lru(仅删除设置了过期时间的键)。
  • 开启 AOF 持久化:可以启用 AOF(Append-Only File)持久化机制来提高数据安全性。通过配置 appendonly yesappendfsync everysec 可以确保每秒将写操作同步到磁盘。

总结

这些优化步骤和配置可以帮助你更加安全、稳定地使用 Redis,同时确保 Redis 可以高效地运行在你的环境中。记得根据你的实际需求调整配置,尤其是在生产环境中,应当特别关注安全性和性能。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/67424.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

1.17学习

crypto nssctf-[SWPUCTF 2021 新生赛]crypto8 不太认识这是什么编码&#xff0c;搜索一下发现是一个UUENCODE编码&#xff0c;用在线工具UUENCODE解码计算器—LZL在线工具解码就好 misc buuctf-文件中的秘密 下载附件打开后发现是一个图片&#xff0c;应该是一个图片隐写&…

Python爬虫学习前传 —— Python从安装到学会一站式服务

早上好啊&#xff0c;大佬们。我们的python基础内容的这一篇终于写好了&#xff0c;啪唧啪唧啪唧…… 说实话&#xff0c;这一篇确实写了很久&#xff0c;一方面是在忙其他几个专栏的内容&#xff0c;再加上生活学业上的事儿&#xff0c;确实精力有限&#xff0c;另一方面&…

LabVIEW时域近场天线测试

随着通信技术的飞速发展&#xff0c;特别是在5G及未来通信技术中&#xff0c;天线性能的测试需求日益增加。对于短脉冲天线和宽带天线的时域特性测试&#xff0c;传统的频域测试方法已无法满足其需求。时域测试方法在这些应用中具有明显优势&#xff0c;可以提供更快速和精准的…

LabVIEW 程序中的 R6025 错误

R6025错误 通常是 运行时库 错误&#xff0c;特别是与 C 运行时库 相关。这种错误通常会在程序运行时出现&#xff0c;尤其是在使用 C 编译的程序或依赖 C 运行时库的程序时。 ​ 可能的原因&#xff1a; 内存访问冲突&#xff1a; R6025 错误通常是由于程序在运行时访问无效内…

【漏洞预警】FortiOS 和 FortiProxy 身份认证绕过漏洞(CVE-2024-55591)

文章目录 一、产品简介二、漏洞描述三、影响版本四、漏洞检测方法五、解决方案 一、产品简介 FortiOS是Fortinet公司核心的网络安全操作系统&#xff0c;广泛应用于FortiGate下一代防火墙&#xff0c;为用户提供防火墙、VPN、入侵防御、应用控制等多种安全功能。 FortiProxy则…

免费送源码:Java+ssm+MySQL 基于PHP在线考试系统的设计与实现 计算机毕业设计原创定制

摘 要 信息化社会内需要与之针对性的信息获取途径&#xff0c;但是途径的扩展基本上为人们所努力的方向&#xff0c;由于站在的角度存在偏差&#xff0c;人们经常能够获得不同类型信息&#xff0c;这也是技术最为难以攻克的课题。针对在线考试等问题&#xff0c;对如何通过计算…

服务器迁移MySQL

由于公司原有的服务器不再使用&#xff0c;需要将老的服务器上的MySQL迁移到新的服务器上&#xff0c;因此需要对数据进行备份迁移&#xff0c;前提是两台服务器已安装相同版本的MySQL&#xff0c;这里就不再讲解MySQL的安装步骤了&#xff0c;可以安装包、可以在线下载、可以容…

前端【3】--CSS布局,CSS实现横向布局,盒子模型

盒子分类 1、块级盒子 2、内联级盒子 3、内联块级盒子 4、弹性盒子 5、盒子内部分区 方法一&#xff1a;使用 float 普通盒子实现横向布局 方法二&#xff1a;使用 display: inline-block 内联块级元素实现横向布局 方法三&#xff1a;使用弹性盒子 flexbox&#xff0…

Mockito+PowerMock+Junit单元测试

一、单元测试用途 1、日常开发团队要求规范&#xff0c;需要对开发需求代码进行单元测试并要求行覆盖率达到要求&#xff0c;DevOps流水线也会开设相关门禁阀值阻断代码提交&#xff0c;一般新增代码行覆盖率80%左右。 二、Mock测试介绍 1、Mock是为了解决不同的单元之间由于…

Ubuntu上,ffmpeg如何使用cuda硬件解码、编码、转码加速

本文使用 Ubuntu 环境。Ubuntu 直接使用 APT 安装的就支持 CUDA 加速。本文使用这样下载的版本进行演示&#xff0c;你自己编译或者其他源的版本可能会不同。 ffmpeg 的一些介绍&#xff0c;以及 macOS 版本的 ffmpeg 硬件加速请见《macOS上如何安装&#xff08;不需要编译安装…

WPS计算机二级•高效操作技巧

听说这里是目录哦 斜线表头 展示项目名称&#x1f34b;‍&#x1f7e9;横排转竖排&#x1f350;批量删除表格空白行&#x1f348;方法一方法二建辅助列找空值 能量站&#x1f61a; 斜线表头 展示项目名称&#x1f34b;‍&#x1f7e9; 选中单元格&#xff0c;单击右键➡️“设…

【Linux系列】查看服务器是否使用了 SSD 的多种方法

&#x1f49d;&#x1f49d;&#x1f49d;欢迎来到我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;希望您在这里可以感受到一份轻松愉快的氛围&#xff0c;不仅可以获得有趣的内容和知识&#xff0c;也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学…

unity2022以上导出到AndroidStudio后更新步骤

1、unity里面Export出unityLibrary 2、导出apk&#xff0c;里面才包含libil2cpp(新版unity无法直接导出libil2cpp 3、注释AS项目app下的build.gradle里面包含unityLibrary的代码 4、注释AS项目settings.gradle包含unityLibrary的代码 5、删除AS项目里面的unityLibrary文件夹 6、…

挖掘机检测数据集,准确识别率91.0%,4327张原始图片,支持YOLO,COCO JSON,PASICAL VOC XML等多种格式标注

挖掘机检测数据集&#xff0c;准确识别率91.0%&#xff0c;4327张图片&#xff0c;支持YOLO&#xff0c;COCO JSON&#xff0c;PASICAL VOC XML等多种格式标注 数据集详情 数据集分割 训练组70&#xff05; 3022图片 有效集20&#xff05; 870图片 测试集10&…

【框架篇】Spring MVC 介绍及使用(详细教程)

Spring MVC 介绍 1&#xff0c;MVC 设计模式 MVC&#xff08;Model-View-Controller&#xff09;是一种常见的软件设计模式&#xff0c;用于将应用程序的逻辑分离成三个独立的组件&#xff1a; 模型&#xff08;Model&#xff09;&#xff1a;模型是应用程序的数据和业务逻辑…

qt vs ios开发应用环境搭建和上架商店的记录

qt 下载链接如下 https://download.qt.io/new_archive/qt/5.14/5.14.2/qt-opensource-mac-x64-5.14.2.dmg 安装选项全勾选就行&#xff0c;这里特别说明下qt5.14.2/qml qt5.14.2对qml支持还算成熟&#xff0c;但很多特性还得qt6才行&#xff0c;这里用qt5.14.2主要是考虑到服…

windows 极速安装 Linux (Ubuntu)-- 无需虚拟机

1. 安装 WSL 和 Ubuntu 打开命令行&#xff0c;执行 WSL --install -d ubuntu若报错&#xff0c;则先执行 WSL --update2. 重启电脑 因安装了子系统&#xff0c;需重启电脑才生效 3. 配置 Ubuntu 的账号密码 打开 Ubuntu 的命令行 按提示&#xff0c;输入账号&#xff0c;密…

AI编程工具使用技巧——通义灵码

活动介绍通义灵码1. 理解通义灵码的基本概念示例代码生成 2. 使用明确的描述示例代码生成 3. 巧妙使用注释示例代码生成 4. 注意迭代与反馈原始代码反馈后生成优化代码 5. 结合生成的代码进行调试示例测试代码 其他功能定期优化生成的代码合作与分享结合其他工具 总结 活动介绍…

C#表达式和运算符

本文我们将学习C#的两个重要知识点&#xff1a;表达式和运算符。本章内容会理论性稍微强些&#xff0c;我们会尽量多举例进行说明。建议大家边阅读边思考&#xff0c;如果还能边实践就更好了。 1. 表达式 说到表达式&#xff0c;大家可能感觉有些陌生&#xff0c;我们先来举个…

pycharm+pyside6+desinger实现查询汉字笔顺GIF动图

一、引言 这学期儿子语文期末考试有一道这样的题目&#xff1a; 这道题答案是B&#xff0c;儿子做错了选了C。我告诉他“车字旁”和“车”的笔顺是不一样的&#xff0c;因为二者有一个笔画是不一样的&#xff0c;“车字旁”下边那笔是“提”&#xff0c;而“车”字是“横”&am…