解决MySQL 5.7在Redhat 9中启动报错:libncurses.so.5和libtinfo.so.5缺失问题

在使用Linux系统搭建MySQL数据库的过程中,我们往往会遇到各种依赖库的问题,尤其是在安装较旧版本的MySQL时。最近,在RedHat 9(rocky linux 9)系统上安装MySQL 5.7版本时,我遇到了一个典型的依赖库缺失错误,导致无法启动MySQL服务。具体的错误信息如下:

./mysql: error while loading shared libraries: libncurses.so.5: cannot open shared object file: No such file or directory

./mysql: error while loading shared libraries: libtinfo.so.5: cannot open shared object file: No such file or directory

这篇博客旨在为遇到同样问题的朋友提供一个详细的解决方案。

背景

在rockylinux 9 新安装的MySQL 5.7在启动时遇到了依赖库文件libncurses.so.5libtinfo.so.5找不到的两个错误。经过检查,发现系统中并不存在这两个库的指定版本,但存在更高版本的库文件。
tKtnHJSVdU.png

解决方案

问题1: 缺少libncurses.so.5

首先,我们尝试解决libncurses库文件缺失的问题。通过以下命令可以搜索系统中已有的libncurses版本:

find / -name 'libncurses*'

输出示例:
uVDM2og7in.png

/usr/lib64/libncurses.so.6
/usr/lib64/libncursesw.so.6
/usr/lib64/libncurses.so.6.2
/usr/lib64/libncursesw.so.6.2

可以看到,系统已安装的是libncurses.so.6版本。解决方法是创建一个指向高版本库文件的符号链接(软链接),模拟出libncurses.so.5

ln -s /usr/lib64/libncurses.so.6 /usr/lib64/libncurses.so.5

问题2: 缺少libtinfo.so.5

PnSmnDtCNv.png
解决了libncurses.so.5的问题后,再次尝试启动MySQL时,出现了新的错误,关于libtinfo.so.5文件缺失。我们同样通过搜索,查看系统中是否存在libtinfo的其他版本:

find / -name 'libtinfo.so*'

输出示例:
cjWz6aRgCr.png

/usr/lib64/libtinfo.so.6
/usr/lib64/libtinfo.so.6.2

同前面的处理方法,创建一个指向libtinfo.so.6的符号链接来解决问题:

ln -s /usr/lib64/libtinfo.so.6 /usr/lib64/libtinfo.so.5

u0UwW3VrAx.png

结语

执行完上述步骤后,再次尝试启动MySQL服务,此时应该能够正常启动了。这个方法虽然简单,但在处理较旧的软件和库文件版本不兼容问题时非常有效。

希望这篇技术博客能帮助到遇到同样问题的开发者和运维工程师们。面对此类库依赖问题,创建软链接是一种快捷有效的解决方法,但也要注意,长期依赖于软链接可能会带来未知的风险,特别是在系统升级时。因此,推荐在新的项目中使用与操作系统兼容的软件版本,或考虑将软件升级到最新版本,以减少此类问题的出现。

感谢阅读,希望对你有所帮助!

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

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

相关文章

无法枚举容器内对象 访问被拒绝

一、什么是“无法枚举容器中的对象。访问被拒绝”错误? 在Windows设备当中,对文件或文件夹的权限进行设置可以有效地保护隐私内容。因此,管理员账户可以对权限进行更改,并且有权决定是否将内容共享给多个用户使用。但是在某些情况…

如何使用Python操作MySQL的各种功能?高级用法?

当今互联网时代,数据处理已经成为了一个非常重要的任务。而MySQL作为一款开源的关系型数据库,被广泛应用于各种场景。本篇博客将介绍如何使用Python操作MySQL的各种功能,以及一些高级用法。 连接MySQL 在Python中,我们可以使用p…

在Vue中搭建Three.js环境(超详细、保姆级),创建场景、相机、渲染器《一》

目录 Three.js简介创建vue项目引入Three.js实际操作环节文件目录创建初始化场景、相机 Three.js简介 Three.js 是一款基于 WebGL的 JavaScript 3D 库,它封装了 WebGL API,为开发者提供了简单易用的 API 来在 Web 浏览器中展示 3D 图形。Three.js 提供了…

c++设计模式总结

C设计模式是一套被广泛认可的用于解决常见对象导向设计问题的最佳实践。设计模式可以帮助开发者编写更加清晰、可维护和可扩展的代码。设计模式通常分为三大类:创建型、结构型和行为型。下面,我将分别介绍这三类设计模式的概念、应用场景和C实现示例。 …

将List转换为数组或者将数组转换为List,如果改变了原始值,转换后的数据会发生改变吗?

将List转换为数组或将数组转换为List涉及到数据结构的变化。在Java中,这两种转换是否会影响原始数据取决于转换的方式和使用的数据结构。下面分别解释这两种情况: 将List转换为数组 当你将一个List转换为数组时,通常通过List的toArray()方法…

CUDA学习笔记04:向量之和

参考资料 CUDA编程模型系列二(向量操作)_哔哩哔哩_bilibili (非常好的学习资料!) vs2019 随意新建一个空项目,按照之前的环境配置配好项目依赖: CUDA学习笔记02:测试程序hello world-CSDN博客 代码结构…

JavaScript的事件初始

JavaScript 的事件初识 基本概念 html和JS做的一个约定。浏览器需要监听用户做了什么样的操作,并对用户的操作进行对应的反馈,从而形成一个动态的页面效果。 用户对于页面的一些操作(点击, 选择, 修改等) 操作都会在浏览器中产生一个个的事件。 事件的三…

《 前端挑战与未来:如何看待“前端已死”》

在技术领域,时常会有一些激进的言论引发热议,比如近年来不少人声称“前端已死”。这样的言论引发了广泛的讨论和反思。本文将从几个方向探讨这个话题:为什么会出现“前端已死”的言论、如何看待这种说法、前端技术的未来发展趋势以及前端人如…

MS8911S/8921S/8922M/8931S——4ns 延时、轨到轨高速比较器

产品简述 MS8911S/MS8921S/MS8922M/MS8931S 是一款具 有内部迟滞的高速比较器。其电源电压范围为 3.0V- 5.5V ,输入和输出范围均可做到轨到轨。其输出为推 挽结构,兼容 CMOS/TTL 逻辑电平标准。传输延时为 4ns ,且失调电压低。单一比…

在虚拟机vm下的Linux系统下 安装redis 超详细

打开Linux后 右键打开终端 1.输入:su root 登录root 密码是123456 2.然后输入:yum -y install gcc-c 安装gcc基础依赖包 3.yum -y install centos-release-scl 4.yum -y install devtoolset-9-gcc devtoolset-9-gcc-c devtoolset-9-binutils //为了编译最新版本的Redis源码 用…

二维码门楼牌管理系统应用场景:城市规划与土地管理的新利器

文章目录 前言一、城市规划部门的新助手二、门牌数据的深度应用三、支持可持续城市发展四、与城市规划部门的联动 前言 随着科技的不断进步,二维码技术已经深入到我们生活的方方面面。在城市规划与土地管理领域,二维码门楼牌管理系统正成为一项革命性的…

在dockerfile,文件和文件夹打包到镜像中,解决文件夹文件为空的问题

一般来说直接copy就行了,但是不知道为什么看起来是复制过去了,但实际结果总为空。 最后想了一个办法,那就是把要复制的文件夹在外面压缩成压缩包,然后复制进去即可。 以复制模型缓存为例: FROM IMAGE:ve…

【Selenium】UI自动化|元素定位常见问题

1、报错NoSuchElementException——定位不到元素 分析的可能原因: 页面还没有加载出来,就对页面上的元素进行的操作 元素在iframe中,先要理解下frame的实质,frame中实际上是嵌入了另一个页面,而webdriver每次只能在一…

Linux中给复杂命令起别名

目录 1 前言 2 操作步骤 2.1 打开.bashrc 2.2 编辑.bashrc-添加别名 2.3 使别名生效 1 前言 在linux中有些指令会比较长,为了便捷的使用它们,我们就可以采取起别名的方式,具体操作如下。 2 操作步骤 2.1 打开.bashrc 输入如下指令&a…

前端WebRTC局域网1V1视频通话

基本概念 WebRTC(Web Real-Time Communications) 网络实时通讯,它允许网络应用或者站点,在不借助中间媒介的情况下,建立点对点(Peer-to-Peer)的连接,实现视频流和音频流或者其他任…

如何在2.2.1版Aduino IDE中开发ESP32

ESP32芯片集成了WIFI和蓝牙,而且关于生态也很不错,越来越多的学习者和开发者选择此类芯片,而不像用keil开发STM32或者51一样,ESP32虽然也有官方的ESP32-IDF开发软甲,但是经过我个人的实操体验,不适合小白或…

每天一个数据分析题(一百八十九)

在线性回归的高斯马尔科夫假设中,以下属于对残差的假设的有() A. 残差序列不相关 B. 残差序列方差为1 C. 残差序列为正态分布 D. 残差序列方差相同 题目来源于CDA模拟题库 点击此处获取答案

【数据结构与算法】二叉树解题20240306

这里写目录标题 一、104. 二叉树的最大深度二、100. 相同的树三、226. 翻转二叉树四、101. 对称二叉树 一、104. 二叉树的最大深度 简单 给定一个二叉树 root ,返回其最大深度。 二叉树的 最大深度 是指从根节点到最远叶子节点的最长路径上的节点数。 1、确定递归…

基于R语言和iris数据集实现随机森林模型及测试应用

基于R语言和iris数据集实现随机森林模型及测试应用 测试应用R代码 #加载随机森林模型库 > library("randomForest") #加载iris数据集 > data(iris) > head(iris)# 设置训练数据和标签 t_data <- iris[, -5] t_labels <- iris[, 5] # 训练随机森…

【Supra空投指南】

一、简介 单号注册并完成kyc最低送490个代币&#xff08;价值200u左右&#xff0c;可多号操作&#xff09;&#xff0c;每周都有任务&#xff08;非常简单&#xff0c;不花时间&#xff09;&#xff0c;随完成任务增多可获得更多空投&#xff0c;3-4月份空投!! 二、操作步骤 …