记录正式环境测试环境【RedHat7编译升级redis7.0.9】--有关报错及解决

记录正式环境&测试环境【RedHat7 编译升级redis7.0.9】--有关报错及解决

  • 🔻 一、报错详情
      • 1.1 ⛳ 写在前面
      • 1.2 ⛳ 报错1
      • 1.3 ⛳ 报错2
      • 1.4 ⛳ 安装redis
      • 1.5 ⛳ 版本检查
  • 🔻 二、⛳ 总结

在这里插入图片描述



🔻 一、报错详情

1.1 ⛳ 写在前面

🍁 升级前务必做好旧版数据目录、配置文件、启动文件备份,方便出错后进行恢复。 🍁

🍁1、在上一篇文章中【Redis升级—修复代码注入漏洞、缓冲区错误漏洞】,给大家写到,redis7.09编译需要更高版本的gcc和Python环境,本次是在客户内网环境下做redis升级,做redis漏洞整改,特记录有关问题及解决办法。

🍁2、因为编译升级gcc需要时间较长,所以就没有升级gcc,python和gcc都采用系统自带的版本,记录的步骤可供大家参考和学习。



  • 正式环境编译竟没有报错:😅😅😅,升级很顺利😂😂😂。

[root@zwgxxt-sj redis-7.0.9]# cat /etc/redhat-release
Red Hat Enterprise Linux Server release 7.3 (Maipo)
只是操作系统版本不一致而已,其他gcc,python版本都一样。

正式环境编译情况:
在这里插入图片描述在这里插入图片描述

  • 正式环境升级结果:

1、启动redis服务
[root@zwgxxt-sj run]# service redisd start
Starting Redis server…

2、redis服务进程查看,
[root@zwgxxt-sj run]# ps -ef | grep redis
root 33524 81182 0 18:29 pts/1 00:00:00 vim /etc/init.d/redisd
root 33746 81182 0 18:29 pts/1 00:00:00 vi redisd-bak
root 34622 1 0 18:31 ? 00:00:00 /usr/local/bin/redis-server *:8811
root 34656 81182 0 18:31 pts/1 00:00:00 grep --color=auto redis

3、redis版本检查
[root@zwgxxt-sj run]# redis-cli -v
redis-cli 7.0.9
[root@zwgxxt-sj run]#

在这里插入图片描述

4、应用系统检查---正常
在这里插入图片描述




  • 下面是虚拟机搭建的测试环境----含有关报错解决😲😲😲

🍁1、操作系统版本Red Hat Enterprise Linux Server release 7.9 (Maipo)
[root@db-oracle src]# cat /etc/redhat-release
Red Hat Enterprise Linux Server release 7.9 (Maipo)
[root@db-oracle src]#

🍁2、redis版本redis 4.0.8
[root@db-oracle src]# redis-cli -v
redis-cli 4.0.8

🍁3、gcc版本gcc (GCC) 4.8.5 20150623 (Red Hat 4.8.5-44)
[root@db-oracle src]# gcc --version
gcc (GCC) 4.8.5 20150623 (Red Hat 4.8.5-44)
Copyright © 2015 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

🍁4、python版本Python 2.7.5
[root@db-oracle src]# python --version
Python 2.7.5



1.2 ⛳ 报错1

  • 前置操作:

[root@db-oracle redis-7.0.9]# make MALLOC=libc

  • 报错:

MAKE hdr_histogram
cd hdr_histogram && make
make[3]: Entering directory /usr/local/redis-7.0.9/deps/hdr_histogram' cc -std=c99 -Wall -Os -g -DHDR_MALLOC_INCLUDE=\"hdr_redis_malloc.h\" -c hdr_histogram.c ar rcs libhdrhistogram.a hdr_histogram.o make[3]: Leaving directory /usr/local/redis-7.0.9/deps/hdr_histogram’
make[2]: Leaving directory /usr/local/redis-7.0.9/deps' make[1]: *** No rule to make target …/deps/jemalloc/include/jemalloc/jemalloc.h’, needed by adlist.o'. Stop. make[1]: Leaving directory /usr/local/redis-7.0.9/src’
make: *** [all] Error 2
[root@db-oracle redis-7.0.9]

  • 解决办法:

1、🍁进入redis-7.0.9/deps目录
[root@db-oracle redis-7.0.9]# cd deps/
[root@db-oracle deps]# pwd
/usr/local/redis-7.0.9/deps
[root@db-oracle deps]#

2、🍁执行命令:make hiredis jemalloc linenoise lua
在这里插入图片描述

3、🍁再次执行命令: make MALLOC=libc
在这里插入图片描述



1.3 ⛳ 报错2

  • 前置操作:

🍁 执行make test报错
[root@db-oracle redis-7.0.9]# make test

  • 报错:

🍁 错误内容:
!!! WARNING The following tests failed:

*** [err]: client freed during loading in tests/integration/rdb.tcl
Expected ‘0’ to be equal to ‘1’ (context: type eval line 10 cmd {assert_equal [s loading] 1} proc ::start_server)
*** [err]: config during loading in tests/unit/introspection.tcl
Expected ‘0’ to be equal to ‘1’ (context: type eval line 10 cmd {assert_equal [s loading] 1} proc ::start_server)
*** [err]: Active defrag edge case in tests/unit/memefficiency.tcl
defrag didn’t stop.
Cleanup: may take some time… OK
make[1]: *** [test] Error 1
make[1]: Leaving directory `/usr/local/redis-7.0.9/src’
make: *** [test] Error 2
[root@db-oracle redis-7.0.9]#


在这里插入图片描述

  • 解决办法:

🍁 1、编辑rdb.tcl文件:vim tests/integration/rdb.tcl

在这里插入图片描述

🍁 2、编辑introspection.tcl文件:vim tests/unit/introspection.tcl

在这里插入图片描述

🍁 3、编辑memefficiency.tcl文件:vim tests/unit/memefficiency.tcl

在这里插入图片描述

-------------这些参数百度了一下应该是编译等待的毫秒数,所以把时间改大,并用单线程执行make test

🍁 4、用单线程执行行 make test:
[root@db-oracle redis-7.0.9]# taskset -c 1 sudo make test

在这里插入图片描述

-------------接下来即可执行make install 安装redis



1.4 ⛳ 安装redis

[root@db-oracle redis-7.0.9]# cd src && make install
which: no python3 in (/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin)

Hint: It’s a good idea to run ‘make test’ ; )

INSTALL redis-server
INSTALL redis-benchmark
INSTALL redis-cli
[root@db-oracle src]#

🍁 将redis-7.0.9启动脚本复制一份放到/etc/init.d目录下
[root@db-oracle init.d]# cp /usr/local/redis-7.0.9/utils/redis_init_script /etc/init.d/redisd
🍁执行开机自启命令
[root@zyl-docker init.d]# chkconfig redisd on

1.5 ⛳ 版本检查

[root@db-oracle init.d]# service redisd start
[root@db-oracle src]# redis-cli -v
redis-cli 7.0.9
[root@db-oracle src]#

🔻 二、⛳ 总结

🍁 1、编译有关过程报错,可能是gcc版本原因导致,因为gcc编译升级时间较长,所以直接用的gcc4.8.5编译升级的redis。但是正式环境没报错,只是操作系统版本不一致,所以也有可能是操作系统版本原因。
🍁 2、实验证明低版本的gcc、python也是可以编译高版本的redis的👻👻👻。



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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

王道计算机网络学习笔记(3)——数据链路层

前言 文章中的内容来自B站王道考研计算机网络课程,想要完整学习的可以到B站官方看完整版。 三:数据链路层 3.1:数据链路层功能概述 结点:主机、路由器 链路:网络中两个结点之间的物理通道,链路的传输介…

【DeepLearning】Ubuntu中深度学习环境配置完整流程

Ubuntu中深度学习环境配置完整流程 1 显卡驱动2 cuda3 cuDNN4 torch5 torchvision 1 显卡驱动 支持 cuda 的所有显卡型号: Link 查询显卡型号 lspci -nn | grep VGA即 Vendor ID:Device ID 为 10de:21c4,在浏览器或者 Link 中搜索。 填写显卡信息: Link 选择要下载…

数据结构——快速排序的介绍

快速排序 快速排序是霍尔(Hoare)于1962年提出的一种二叉树结构的交换排序方法。快速排序是一种常用的排序算法,其基本思想是通过选择一个元素作为"基准值",将待排序序列分割成两个子序列,其中一个子序列的元素都小于等于基准值&am…

SpringBoot集成WebSocket实现消息实时推送(提供Gitee源码)

前言:在最近的工作当中,客户反应需要实时接收消息提醒,这个功能虽然不大,但不过也用到了一些新的技术,于是我这边写一个关于我如何实现这个功能、编写、测试到部署服务器,归纳到这篇博客中进行总结。 目录 …

【计算机网络自顶向下】计算机网络期末自测题(一)

前言 “(学不懂一点) (阴暗的爬行)(尖叫)(扭曲)(阴暗的爬行)(尖叫)(扭曲)(阴暗的爬行)(尖叫&#…

LeetCode·1262. 可被三整除的最大和·贪心

作者:小迅 链接:https://leetcode.cn/problems/greatest-sum-divisible-by-three/solutions/2314049/tan-xin-zhu-shi-chao-ji-xiang-xi-by-xun-r0n76/ 来源:力扣(LeetCode) 著作权归作者所有。商业转载请联系作者获得…

vscode 调试

目录 准备 GDB 调试方法 问题 准备 然后点击 文件-打开文件夹,找到创建的代码路径,确定后,在左侧的资源管理器可以看到代码文件。 第一次运行需要安装 c 的扩展,在扩展页面中,安装 C/C 编译注意一定要加上 -g 指令…

Linux tar.xz 格式的文件正确的解压命令

Linux tar.xz 最近下载 Linux kernel,好像最近流行 tar.xz 格式的后缀 对于 xz 后缀的压缩文件,我之前的解压方式是分为两步: xz -d xxx.tar.xz 解压成 xxx.tar 格式文件,然后再 tar xf xxx.tar 解压文件。 这样的操作不仅比较的…

跳槽过去,刚工作三天就被裁是一种怎样的体验

前言 还有谁?刚上三天班就被公司公司的工作不适合我,叫我先提升一下。 后面我也向公司那边讨要了一个说法,我只能说他们那边的说辞让我有些不服气。 现在之所以把这件事在csdn上记录一下,一是记录一下自己的成长轨迹&#xff0…

使用STM32F103的串口实现IAP程序升级功能

使用STM32F103的串口实现IAP程序升级功能 🎬IAP程序烧录全过程演示: ✨这几天折腾IAP升级功能,狂补了很多相关BootLoader相关的知识。本来最想实现IAP升级程序的方式是,基于SPI通讯的SD卡,借助挂载的FatFS文件系统&am…

【计网】第一章 计算机网络概述

文章目录 计算机网络概述一、计算机网络在信息时代中的作用二、互联网概述2.1 互连网概念2.2 网络的网络2.3 互连网基础结构发展的三个阶段2.4 互连网的标准化工作 三、互联网的组成3.1 互联网的边缘部分3.2 互联网的核心部分3.2.1 基础概念3.2.2 电路交换3.2.3 报文交换3.2.4 …

Baumer工业相机堡盟工业相机如何使用新版本NEOAPI SDK控制相机数据流的开启和关闭(C++)

Baumer工业相机堡盟工业相机如何使用新版本NEOAPI SDK控制相机数据流的开启和关闭(C) Baumer工业相机Baumer工业相机NEOAPI SDK的技术背景Baumer工业相机使用NEOAPISDK控制相机数据流的方式1.引用合适的类文件2.使用NEOAPISDK控制相机数据流的方式2.使用…

macOS Monterey 12.6.7 (21G651) 正式版发布,ISO、IPSW、PKG 下载

macOS Monterey 12.6.7 (21G651) 正式版发布,ISO、IPSW、PKG 下载 本站下载的 macOS 软件包,既可以拖拽到 Applications(应用程序)下直接安装,也可以制作启动 U 盘安装,或者在虚拟机中启动安装。另外也支持…

【发布】ChatGLM2-6B:性能大幅提升,8-32k上下文,推理提速42%

自3月14日发布以来, ChatGLM-6B 深受广大开发者喜爱,截至 6 月24日,来自 Huggingface 上的下载量已经超过 300w。 为了更进一步促进大模型开源社区的发展,我们再次升级 ChatGLM-6B,发布 ChatGLM2-6B 。 在主要评估LLM模…

css绘制网格背景

文章目录 前言效果图说明 前言 本篇文章主要简单扼要的去实现css网格背景,并进一步探求其应用原理 效果图 css代码 body::before, body::after {position: fixed;top: 0;left: 0;right: 0;bottom: 0;content: ;background-repeat: repeat;pointer-events: none;o…

解密EEMD分析:Rlibeemd包带你玩转信号分解和时间序列预测

一、简介 1.1 什么是EEMD? EEMD(Ensemble Empirical Mode Decomposition)是一种信号分解方法,它旨在分解非线性、非平稳或非白噪声的信号,以揭示复杂信号的局部特征和周期性成分。EEMD不同于传统的余弦变换、小波变换等线性变换…

android存储3--初始化.unlock事件的处理

android版本:android-11.0.0_r21http://aospxref.com/android-11.0.0_r21 概述:SystemServiceManager收到unlock事件后,遍历service链表,执行各个service的onUserUnlocking。对于存储service,执行的是StorageManagerS…

【javascript】闭包

通过定时器从第一个元素开始往后&#xff0c;每隔一秒输出arr数组中的一个元素。 <script>var arr [one, two, three];for(var i 0; i < arr.length; i) {setTimeout(function () {console.log(arr[i]);}, i * 1000);} </script> 但是运行过后&#xff0c;我…

【LLMs 入门实战 】第二式:MiniGPT4 模型学习与实战

2023年4月17日&#xff0c;多模态问答模型MiniGPT-4发布&#xff0c;实现了GPT-4里的宣传效果《MiniGPT-4: Enhancing Vision-language Understanding with Advanced Large Language Models》《MiniGPT-4&#xff1a;使用高级大语言模型增强视觉语言理解》 模型介绍模型架构微调…

ECCV2022 多目标跟踪(MOT)汇总

一、《Towards Grand Unification of Object Tracking》 作者: Bin Yan1⋆, Yi Jiang2,†, Peize Sun3, Dong Wang1,†,Zehuan Yuan2, Ping Luo3, and Huchuan Lu School of Information and Communication Engineering, Dalian University of Technology, China 2 ByteDance …