mysql8.0二进制安装遇到的问题
公司新项目需要用CentOS8.0以上的系统和mysql8.0;于是在虚拟机上开始操作测试;
一实验环境
1、系统版本:CentOS8.3
2、数据库版本:mysql-8.0.23
3、数据库下载链接:https://dev.mysql.com/downloads/mysql/

二、遇到的问题
这里不讲安装过程,之前博客有写只不过用的是mysql5.7,安装过程是一样的;直接说问题;
当解压完mysql8.0压缩包后,配置完环境变量后就可以直接执行mysql -V命令去测试环境变量是否成功;但是执行mysql -V命令报错了,报错信息如下:
mysql: error while loading shared libraries: libtinfo.so.5: cannot open shared object file: No such file or directory
当看到这个信息的时候我初步判断是因为我没有对数据库做初始化,导致没有加载libtinfo.so.5这个公共库;于是我接着初始化了mysql,并且mysql成功启动,但是当我再次执行mysql命令的时候,依然是之前的报错;于是我find / -name libtinfo.so.5这个模块,发现确实没有,就又执行了yum install libtinfo.so.5 -y来安装该模块;安装完成之后成功的在/usr/lib/目录下找到了该模块,以为问题解决了,但是当再一次执行mysql命令的时候发现仍然是之前的报错;
于是,开始思考它到底在找哪个目录没有找到,因为lib目录有两个lib和lib64,于是我将/usr/lib/目录下的libtinfo.so.5做了个软连接到/usr/lib64目录下(ln -s /usr/lib/libtinfo.so.5 /usr/lib64/libtinfo.so.5),再次执行mysql命令发现报错信息并非原来的那个No such file or directory了,报错信息如下:
mysql: error while loading shared libraries: libtinfo.so.5: wrong ELF class: ELFCLASS32
由此报错可以判断,mysql确实是找的lib64目录中的libtinfo.so.5;又百度了下“ELFCLASS32”,表示调用的so文件是32位的;既然32位的不对,那么就需要一个64位的so文件,于是我在lib64目录下执行了以下命令:
[root@slave lib64]# ll libtinfo*
lrwxrwxrwx. 1 root root 15 5月 11 2019 libtinfo.so.6 -> libtinfo.so.6.1
-rwxr-xr-x. 1 root root 208616 5月 11 2019 libtinfo.so.6.1
发现有关于libtinfo.so的模块,于是抱着尝试的心态在lib64目录下面又做了一个软连接:
[root@slave lib64]# ln -s /usr/lib64/libtinfo.so.6 /usr/lib64/libtinfo.so.5
[root@slave lib64]# ll libtinfo*
lrwxrwxrwx 1 root root 24 3月 4 17:33 libtinfo.so.5 -> /usr/lib64/libtinfo.so.6
lrwxrwxrwx. 1 root root 15 5月 11 2019 libtinfo.so.6 -> libtinfo.so.6.1
-rwxr-xr-x. 1 root root 208616 5月 11 2019 libtinfo.so.6.1
然后再次执行mysql命令,执行成功了;问题解决;
后续我又将/usr/lib64下面的软连接libtinfo.so.5删除,将其软链接到了/lib64目录下,发现也是可以的;所以又学习了这几个目录的关系,总结下来就是:/lib64是内核级的,/usr/lib64是系统级的,/usr/local/lib64是用户级的;
三、工作中遇到的一些关于mysql问题的整理
1、客户反馈接口调用无响应
客户反馈他们有个产品调用我们的接口没有响应,由于产品是部署在客户侧设备的,我没有登录权限,只能远程指导客户去排查,起初根据客户描述接口没有响应,就用curl命令发起了一次POST请求,这里data数据是错误的,返回了400状态码,这表示接口是有响应的;因为服务在内网环境下,外面又接了负载均衡,怀疑是负载均衡是不是有什么安全限制给拦截了,于是让客户直接在部署服务的设备上直接用curl命令调用以127.0.0.1为ip的接口,这时候data数据依然是错误的,返回的还是400状态码,这时候也排除了安全限制的问题,查看程序后台日志,也是有返回的,提示参数错误,本身data数据就是有问题的,所以这也是意料之中的事情;
为什么要用错误的data数据来发起POST请求呢,这个解释下,因为客户反馈的问题是调用接口无响应,用错误的data数据只是为了节省时间,初步判断下接口是否给响应;这步工作做完后还是没有定位到问题,于是让客户找了一条正确的data数据用curl命令发起了一次真实的POST请求,发现接口果真没有响应,一直是请求等待中;因为这条接口返回的数据是从mysql库里拿的,接口不返回数据也就意味着数据库没有返回,于是让客户看了3306端口也是起的;又让客户看了mysql所在的设备的磁盘容量,结果发现问题了,mysql的data目录挂载的磁盘使用率100%了,让客户清理了一些无用数据之后,空间释放,再去测试接口,接口响应正常;
有问题后续还会更新。。。。。。。。。。。。。
mysql8.0二进制安装遇到的问题的更多相关文章
- MySql-8.0.12 安装教程
MySql-8.0.12 安装教程随笔https://www.cnblogs.com/CrazyDemo/p/9409995.html MySQL 安装https://m.runoob.com/mys ...
- 【MySQL-123】MySQL8.0.12 安装于Win10
参考blog:MySQL8.0.12 安装及配置 [坑一]输入net start mysql时,MYSQL服务无法启动. 问题:第三步my.ini文件编码错误. 解决方案:https://blog.c ...
- Apache2.4.34 + php 7.28 + MySQL8.0.12 安装及配置
服务端的学习 Apache2.4.34 的安装及配置 1.基本安装 最新的 Apache 已经不提供 Windows 的安装版本,所以我们这里使用的是解压版 -下载地址:https://www.apa ...
- mysql8.0.13安装、使用教程图解
mysql8.0.13安装.使用教程图解 MySQL是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最好的 RDBMS (Relational Database Manageme ...
- 01. MySQL8.0 MAC-OS-X安装
目录 MySQL8.0 MAC-OS-X安装 8.0较与5.7变化 下载 安装 启动 登录查看数据库 安装后mysql文件分布 MySQL8.0 MAC-OS-X安装 换mac啦,搭建开发环境,安装m ...
- MySQL8.0 下载安装启动(Windows10)
2019年6月13日20:13:21 MySQL8.0 下载安装启动(Windows10) 下载 下载地址:https://dev.mysql.com/downloads/mysql/8.0.html ...
- Windows系统MySQL8.0的安装教程
MySQL推出的8.0版本亮点多多,尤其是两倍的提速更让我们迫不及待地安装一睹为快.然而目前我们所用的版本还在5.7之前,今天小编给家分享一下MySQL8.0的安装,尤其是多版本MySQL的共存. 方 ...
- (Win10)Java,Maven,Tomcat8.0,Mysql8.0.15安装与环境配置,以及IDEA2019.3使用JDBC连接MySQL、创建JavaEE项目
之前用windows+linux的双系统,最近不怎么舒服就把双系统给卸了,没想到除了问题,导致有linux残余,于是就一狠心重装了电脑,又把Java及其相关的一些东西重新装了回来,还好当初存了网盘链接 ...
- MySQL8.0.20安装教程,MySQL8.0.20安装详细图文教程
1.下载链接如下: MySQL8.0.20版本 https://dev.mysql.com/doc/relnotes/mysql/8.0/en/news-8-0-20.html 其他版本:MySQL8 ...
随机推荐
- CentOS 8及以上版本配置IP的方法,你 get 了吗
接上篇文章讲了 Ubuntu 18及以上版本的配置方法,本文再来讲讲 CentOS 8 及以上版本配置 IP 的方法. Centos/Redhat(8.x) 配置 IP 方法 说明:CentOS 8 ...
- muduo源码分析之TcpServer模块
这次我们开始muduo源代码的实际编写,首先我们知道muduo是LT模式,Reactor模式,下图为Reactor模式的流程图[来源1] 然后我们来看下muduo的整体架构[来源1] 首先muduo有 ...
- 小米 pro 笔记本双硬盘设置引导盘
功能键 F2 进入 BIOS F12 进入 Boot 选项 步骤 小米 Pro 默认是开启了 UEFI,如果 Boot 选项没有显示出期望的系统盘,那么就是这个系统盘没有 UEFI 分区,按照这个文档 ...
- RealEvo-IDE安装
双击"InstallWizard.exe"启动安装程序 点击"Install RealEvo-IDE"启动 RealEvo-IDE 安装程序 选择"下 ...
- 关于加密通道规范,你真正用的是TLS,而非SSL
摘要:事实上我们现在用的都是TLS,但因为历史上习惯了SSL这个称呼,平常还是以SSL为多. 本文分享自华为云社区<SSL和TLS的联系及区别>,作者: HZDX. TLS/SSL是一种加 ...
- P4169 [Violet]天使玩偶
两种操作:1.加入点(x,y); 2.查询距(x,y)最近的点的曼哈顿距离距离 思路:绝对值拆开通常可以取max,不过这里直接分类讨论4种情况,我们发现如果找\(i\)点左下点\(j\)\((x_j& ...
- Python <算法思想集结>之抽丝剥茧聊动态规划
1. 概述 动态规划算法应用非常之广泛. 对于算法学习者而言,不跨过动态规划这道门,不算真正了解算法. 初接触动态规划者,理解其思想精髓会存在一定的难度,本文将通过一个案例,抽丝剥茧般和大家聊聊动态规 ...
- python自动将新生成的报告作为附件发送并进行封装
发送报告作为自动化部署来讲是一个重要的环节,废话不多说直接上代码吧,如果想更细致的了解内容查阅本博主上篇基本发送文章 特别叮嘱一下:SMTP协议默认端口25,qq邮箱SMTP服务器端口是465 别出丑 ...
- Linux服务器安装图形化界面
Linux服务器安装图形化界面 1.检查有无安装gnome桌面 [root@localhost ~]# rpm -qa |grep gnome 2.查看可安装组件列表 [root@localhost ...
- UiPath选择器之动态选择器的介绍和使用
一.动态选择器的介绍 使用通配符, 能够替换字符串中的零个或多个字符的符号.这些在处理选择器中的动态更改的属性时非常有用. 二.动态选择器在UiPath中的使用 1.在设计库中新建一个Sequence ...