Linux离线安装MySQL8报缺少perl包问题

前言:Linux在线安装MySQL是比较简单的,这里主要介绍离线安装

linux版本为CentOS7,具体为:CentOS-7-x86_64-DVD-2009.iso
mysql版本为8,具体为:mysql-8.2.0-1.el7.x86_64.rpm-bundle.tar

准备工作

安装之前检查是否自带mariadb,该数据库会和MySQL冲突。

# 查看是否安装
rpm -qa | grep mariadb

# 卸载,mariadb-libs-5.5.68-1.el7.x86_64是我的版本,如果不一样,记得改。
rpm -e --nodeps mariadb-libs-5.5.68-1.el7.x86_64

安装

依次执行以下命令,记得改版本。

rpm -ivh mysql-community-common-8.2.0-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-plugins-8.2.0-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-8.2.0-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-8.2.0-1.el7.x86_64.rpm
rpm -ivh mysql-community-icu-data-files-8.2.0-1.el7.x86_64.rpm
rpm -ivh mysql-community-server-8.2.0-1.el7.x86_64.rpm

执行到最后一条时报错:

依赖检测失败:
/usr/bin/perl 被 mysql-community-server-8.2.0-1.el7.x86_64 需要
net-tools 被 mysql-community-server-8.2.0-1.el7.x86_64 需要
perl(Getopt::Long) 被 mysql-community-server-8.2.0-1.el7.x86_64 需要
perl(strict) 被 mysql-community-server-8.2.0-1.el7.x86_64 需要

错误表示缺少依赖包,不同的Linux系统版本缺少的包是不一样的,不过解决思路是一样的。
如果是在线环境,那么我们只需要执行下面两条命令:

yum install net-tools
yum install -y perl-Module-Install.noarch

重点是离线环境应该怎么办?
解决:我们首先去一台有网的Linux系统下下载缺少的依赖包,然后进行安装,或者去网上下载 rpm包下载。

下载 net-tools 到本地命令如下:

yum -y install net-tools --downloadonly --downloaddir /opt/temp

net-tools只有一个rpm包,直接执行命令 rpm -ivh 包名 就可以。

接下来下载 perl 相关。

yum -y install perl-Module-Install.noarch --downloadonly --downloaddir /opt/temp

perl 下载完会有非常多的包,这个时候可能不知道是哪个,或者先执行哪一个,下面是一部分截图。
Linux离线安装MySQL8报缺少perl包问题_第1张图片

重点:将这些包全部放到一个文件夹下,然后进入执行命令就可以了。

rpm -ivh *.rpm --nodeps --force

总结:不管多少rpm包,一键执行

你可能感兴趣的:(Linux,linux,perl,运维)