As bibliotecas cliente do MySQL estão ligadas à versão do MySQL a partir da qual elas são construídas. A biblioteca DBD :: mysql do Perl é compilada contra as bibliotecas do cliente MySQL disponíveis quando é construída. Quando o Redhat (e, por extensão, o CentOS) constrói os RPMs, eles os constroem a partir da fonte fornecida no momento da compilação.
A instalação padrão do MySQL do CentOS 5 vem com o MySQL 5.0.95, que fornece libmysqlclient.so.15. Parece que seu sistema tem uma versão mais nova do MySQL instalada. Se você estiver usando o XtraBackup da Percona, você pode estar executando o Percona Server (Percona Server é uma versão atualizada do MySQL disponibilizada pela Percona).
Você tem algumas opções:
-
Se o Percona Server for instalado por meio do RPM:
Instale o RPM Percona-Server-shared-compat dos repositórios do Percona -
Se uma nova versão do MySQL é instalada via RPM:
Tente encontrar uma biblioteca de compatibilidade semelhante ao que você fez no CentOS 6. -
Se uma nova versão do MySQL for instalada manualmente:
Recompile o RPM de origem perl-DBD-mysql em um sistema com o arquivo libmysqlclient.so.18 e os cabeçalhos de desenvolvimento associados e instale o binário resultante. O CentOS fornece instruções para reconstruir a partir de um RPM de origem . Como alternativa, você também pode baixar e instalar o Percona XtraBackup a partir da fonte.
O CentOS (e o RHEL) esperam que todos os softwares instalados sejam instalados usando RPMs e yum. Quando você sai disso, você corre o risco de não mais usar RPMs para softwares vinculados a suas instalações personalizadas. Parece que esse é o caso aqui, porque não apenas você não tem uma versão adequada do perl-DBD-mysql disponível, mas também tem o PHP vinculado à versão mais recente do MySQL.