【xtrabackup】mysql备份Can‘t locate Digest/MD5.pm in @INC处理流程

事件背景

版本:

mysql版本:5.7.33
xtrabackup版本:percona-xtrabackup-2.4.27-Linux-x86_64.glibc2.12-minimal.tar.gz

通过xtrabackup备份mysql,出现以下报错

Can't locate Digest/MD5.pm in @INC (@INC contains: /usr/local/lib64/perl5 /usr/local/share/perl5 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5 .) at - line 693.
BEGIN failed--compilation aborted at - line 693.

是因为缺少perl-Digest-MD5组件

yum -y install perl-Digest-MD5

重新备份又出现了新的报错

Failed to connect to MySQL server as DBD::mysql module is not installed at - line 1327

检查系统存在 perl-DBD-MySQL组件

[root@iz2zee932fiflmzhuxkftuz 20230309220228]# yum list | grep perl-DBD-MySQL
perl-DBD-MySQL.x86_64                    4.023-6.el7                   base

安装perl-DBD-MySQL组件

[root@iz2zee932fiflmzhuxkftuz 20230309220228]# yum -y install perl-DBD-MySQL
--> Processing Dependency: libmysqlclient.so.18(libmysqlclient_18)(64bit) for package: perl-DBD-MySQL-4.023-6.el7.x86_64
--> Processing Dependency: libmysqlclient.so.18(libmysqlclient_18)(64bit) for package: 2:postfix-2.10.1-6.el7.x86_64
--> Processing Dependency: libmysqlclient.so.18()(64bit) for package: perl-DBD-MySQL-4.023-6.el7.x86_64
--> Processing Dependency: libmysqlclient.so.18()(64bit) for package: 2:postfix-2.10.1-6.el7.x86_64
--> Finished Dependency Resolution
Error: Package: perl-DBD-MySQL-4.023-6.el7.x86_64 (base)
           Requires: libmysqlclient.so.18()(64bit)
Error: Package: perl-DBD-MySQL-4.023-6.el7.x86_64 (base)
           Requires: libmysqlclient.so.18(libmysqlclient_18)(64bit)
Error: Package: 2:postfix-2.10.1-6.el7.x86_64 (@anaconda)
           Requires: libmysqlclient.so.18()(64bit)
Error: Package: 2:postfix-2.10.1-6.el7.x86_64 (@anaconda)
           Requires: libmysqlclient.so.18(libmysqlclient_18)(64bit)
 You could try using --skip-broken to work around the problem
** Found 2 pre-existing rpmdb problem(s), 'yum check' output follows:
2:postfix-2.10.1-6.el7.x86_64 has missing requires of libmysqlclient.so.18()(64bit)
2:postfix-2.10.1-6.el7.x86_64 has missing requires of libmysqlclient.so.18(libmysqlclient_18)(64bit)
[root@iz2zee932fiflmzhuxkftuz 20230309220228]#

缺少libmysqlclient.so.18依赖
检查mysql相关安装包

[root@iz2zee932fiflmzhuxkftuz 20230309220228]# rpm -qa | grep mysql
mysql-community-client-5.7.33-1.el7.x86_64
mysql-community-server-5.7.33-1.el7.x86_64
mysql-community-common-5.7.33-1.el7.x86_64
mysql-community-devel-5.7.33-1.el7.x86_64
mysql-community-libs-5.7.33-1.el7.x86_64
[root@iz2zee932fiflmzhuxkftuz 20230309220228]# find / -name libmysqlclient.so*
/usr/lib64/mysql/libmysqlclient.so.20
/usr/lib64/mysql/libmysqlclient.so
/usr/lib64/mysql/libmysqlclient.so.20.3.20

[root@iz2zee932fiflmzhuxkftuz opt]# perl -MDBD::mysql -e 'print $DBD::mysql::VERSION'
Can't locate DBD/mysql.pm in @INC (@INC contains: /usr/local/lib64/perl5 /usr/local/share/perl5 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5 .).
BEGIN failed--compilation aborted.
[root@iz2zee932fiflmzhuxkftuz opt]#

安装libs-compat的rpm包

[root@iz2zee932fiflmzhuxkftuz src]# rpm -ivh mysql-community-libs-compat-5.7.33-1.el7.x86_64.rpm
warning: mysql-community-libs-compat-5.7.33-1.el7.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY
Preparing...                          ################################# [100%]
Updating / installing...
   1:mysql-community-libs-compat-5.7.3################################# [100%]
[root@iz2zee932fiflmzhuxkftuz src]# find / -name libmysqlclient.so*
/usr/lib64/mysql/libmysqlclient.so.20
/usr/lib64/mysql/libmysqlclient.so.18
/usr/lib64/mysql/libmysqlclient.so.18.1.0
/usr/lib64/mysql/libmysqlclient.so
/usr/lib64/mysql/libmysqlclient.so.20.3.20

libmysqlclient.so.18已找到,问题依旧存在,

[root@iz2zee932fiflmzhuxkftuz src]# perl -MDBD::mysql -e 'print $DBD::mysql::VERSION'
Can't locate DBD/mysql.pm in @INC (@INC contains: /usr/local/lib64/perl5 /usr/local/share/perl5 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5 .).
BEGIN failed--compilation aborted.

继续安装perl-DBD-MySQL组件

[root@iz2zee932fiflmzhuxkftuz src]# yum -y install perl-DBD-MySQL
......
Warning: RPMDB altered outside of yum.
  Installing : perl-Compress-Raw-Bzip2-2.061-3.el7.x86_64                                                                1/7
  Installing : 1:perl-Compress-Raw-Zlib-2.061-4.el7.x86_64                                                               2/7
  Installing : perl-IO-Compress-2.061-2.el7.noarch                                                                       3/7
  Installing : perl-Net-Daemon-0.48-5.el7.noarch                                                                         4/7
  Installing : perl-PlRPC-0.2020-14.el7.noarch                                                                           5/7
  Installing : perl-DBI-1.627-4.el7.x86_64                                                                               6/7
  Installing : perl-DBD-MySQL-4.023-6.el7.x86_64                                                                         7/7
  Verifying  : perl-Net-Daemon-0.48-5.el7.noarch                                                                         1/7
  Verifying  : perl-DBD-MySQL-4.023-6.el7.x86_64                                                                         2/7
  Verifying  : perl-IO-Compress-2.061-2.el7.noarch                                                                       3/7
  Verifying  : 1:perl-Compress-Raw-Zlib-2.061-4.el7.x86_64                                                               4/7
  Verifying  : perl-DBI-1.627-4.el7.x86_64                                                                               5/7
  Verifying  : perl-Compress-Raw-Bzip2-2.061-3.el7.x86_64                                                                6/7
  Verifying  : perl-PlRPC-0.2020-14.el7.noarch                                                                           7/7

Installed:
  perl-DBD-MySQL.x86_64 0:4.023-6.el7

Dependency Installed:
  perl-Compress-Raw-Bzip2.x86_64 0:2.061-3.el7 perl-Compress-Raw-Zlib.x86_64 1:2.061-4.el7 perl-DBI.x86_64 0:1.627-4.el7
  perl-IO-Compress.noarch 0:2.061-2.el7        perl-Net-Daemon.noarch 0:0.48-5.el7         perl-PlRPC.noarch 0:0.2020-14.el7

Complete!

问题解决!

[root@iz2zee932fiflmzhuxkftuz src]# perl -MDBD::mysql -e 'print $DBD::mysql::VERSION'
4.023

后续备份正常
在这里插入图片描述

你可能感兴趣的:(Mysql,mysql,perl,数据库)