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

Redis部署中的问题总汇

前言:本文内容为实操记录,仅供参考!

 Redis安装参考这篇文章:http://t.csdnimg.cn/G15Mv

本文是安装及使用过程中遇到的问题总结。

  1. redis在解压完之后,使用make进行编译(在安装目录进行编译)。如果报出:“cc 未找到命令,原因是虚拟机系统中缺少gcc。”此时使用yum -y install gcc automake autoconf libtool make命令进行解决,如果报出:“致命错误:jemalloc/jemalloc.h: 没有那个文件或目录,需要在make指定分配器为libc。”此时应执行make MALLOC=libc命令继续进行编译,如若期间有报错,请尝试再次执行make。
  2. 在对redis进行安装部署的编译期间报出tmp空间不足,原因是tmp文件夹只被挂载了1M,导致Redis无法进行编译。解决:在根目录下新建了newtmp文件夹,并在配置文件中将TMPDIR的路径指向了新文件夹。(目前不确定挂载文件夹是否真正奏效,由于这种方法直观地来看解决了redis的编译问题,建议保留/newtmp文件夹)
  3. 如果没能编译通过,想要再次执行编译,那么应该删除解压后的redis目录,重新对压缩包进行解压,之后再进行编译。编译完成之后使用make install PREFIX=/usr/local/redis命令进行安装。
  4. 编译安装完成之后,应检查此时的安装目录下是否包含redis.conf配置文件和bin目录本次安装之后找不到bin目录,查找之后得知bin目录指向了原先版本的redis的安装目录下,我直接将其剪切到指定的安装目录下,问题解决
  5. 在bin目录下执行redis-server /usr/local/redis-6.2.6/redis.conf服务启动命令后,命令窗口定格在redis的启动界面,此时的redis已经启动成功,只是这个窗口无法在执行其他命令,如果使用ctrl+C键将中止redis服务启动,这时候就需要另开一个新的命令窗口来继续执行其他操作。解决:通过将redis.conf配置文件中daemonize no改为了daemonize yes,实现redis-server默认后台启动。
  6. 启动Redis报错:WARNING overcommit_memory is set to 0 Background save may fail under low memory condition。这是内存的值设置过低的造成的问题。解决:编辑/etc/sysctl.conf,添加vm.overcommit_memory = 1 #表示内核允许分配所有的物理内存
  7. 启动Redis报错:WARNING: The TCP backlog setting of 511 cannot be enforced because /proc/sys/net/core/somaxconn is set to the lower value of 128.这是因为某个配置文件的值过低,导致无法承载redis服务启动。此时应该再/etc/sysctl.conf文件中添加字段并赋值net.core.somaxconn = 1024,然后执行sysctl -p进行刷新,问题解决。
  8. 通过将redis.conf配置文件中的bind 127.0.0.1 -::1注释掉,实现redis服务允许远程连接。
  9. 通过在redis.conf配置文件中添加requirepass '此处为密码',实现登录校验。

相关文章:

  • 【ansible】Failed to connect to the host via ssh Permission denied
  • Python中模块
  • 让IIS支持.NET Web Api PUT和DELETE请求
  • 《web应用技术》第一次课后练习
  • 【热门话题】Yarn:新一代JavaScript包管理器的安装与使用
  • 网络七层模型之数据链路层:理解网络通信的架构(二)
  • Go第三方框架--gin框架(二)
  • 五种免费的Python开发环境及具体下载网址
  • Java与Go:字符串转IP
  • 2.6 IDE(集成开发环境)是什么
  • 最新ChatGPT/GPT4科研应用与AI绘图及论文高效写作教程
  • 【设计模式】中介者模式的应用
  • IDEA或Pycharm设置Python环境报Cannot set up a python SDK的某种解决方案——更换IDEA或Pycharm的版本
  • 高效物联网连接技术创新:ECWAN边缘协同自组网的未来——基于ChirpLAN窄带扩频技术的无线混合组网
  • 用于 Linux 运维的专门发行版,以及工具
  • js
  • js ES6 求数组的交集,并集,还有差集
  • JS数组方法汇总
  • leetcode-27. Remove Element
  • MySQL用户中的%到底包不包括localhost?
  • 发布国内首个无服务器容器服务,运维效率从未如此高效
  • 关于for循环的简单归纳
  • 目录与文件属性:编写ls
  • 七牛云 DV OV EV SSL 证书上线,限时折扣低至 6.75 折!
  • 使用agvtool更改app version/build
  • 数组的操作
  • 算法-插入排序
  • 通过git安装npm私有模块
  • 通信类
  • 新版博客前端前瞻
  • 移动端唤起键盘时取消position:fixed定位
  • 在GitHub多个账号上使用不同的SSH的配置方法
  • 长三角G60科创走廊智能驾驶产业联盟揭牌成立,近80家企业助力智能驾驶行业发展 ...
  • 翻译 | The Principles of OOD 面向对象设计原则
  • ​3ds Max插件CG MAGIC图形板块为您提升线条效率!
  • ​MPV,汽车产品里一个特殊品类的进化过程
  • # 手柄编程_北通阿修罗3动手评:一款兼具功能、操控性的电竞手柄
  • #Linux(帮助手册)
  • (1)SpringCloud 整合Python
  • (4) PIVOT 和 UPIVOT 的使用
  • (Redis使用系列) SpirngBoot中关于Redis的值的各种方式的存储与取出 三
  • (二)springcloud实战之config配置中心
  • (四)Tiki-taka算法(TTA)求解无人机三维路径规划研究(MATLAB)
  • (学习日记)2024.03.12:UCOSIII第十四节:时基列表
  • (原)记一次CentOS7 磁盘空间大小异常的解决过程
  • (原+转)Ubuntu16.04软件中心闪退及wifi消失
  • (转)淘淘商城系列——使用Spring来管理Redis单机版和集群版
  • .NET / MSBuild 扩展编译时什么时候用 BeforeTargets / AfterTargets 什么时候用 DependsOnTargets?
  • .Net Attribute详解(上)-Attribute本质以及一个简单示例
  • .net core webapi 大文件上传到wwwroot文件夹
  • .net6 webapi log4net完整配置使用流程
  • .NET值类型变量“活”在哪?
  • @Bean, @Component, @Configuration简析
  • [ IOS ] iOS-控制器View的创建和生命周期
  • [ NOI 2001 ] 食物链