在Red Hat Enterprise Linux Server release 5.7 (Tikanga)上使用RPM方式安装Percona Xtrabackup 2.4.6时遇到了一些问题,特意总结在此。
[root@DB-Server tmp]#yum -y install perl perl-devel libaio libaio-devel perl-Time-HiRes perl-DBD-MySQL
安装相关依赖组件时,遇到conflict with file的错误,如上截图所示,然后安装Percona Xtrabackup 2.4.6是就会遇到下面错误:
[root@DB-Server tmp]# rpm -ivh percona-xtrabackup-24-2.4.6-2.el5.x86_64.rpm
warning: percona-xtrabackup-24-2.4.6-2.el5.x86_64.rpm: Header V4 DSA signature: NOKEY, key ID cd2efd2a
error: Failed dependencies:
libev.so.4()(64bit) is needed by percona-xtrabackup-24-2.4.6-2.el5.x86_64
perl(DBD::mysql) is needed by percona-xtrabackup-24-2.4.6-2.el5.x86_64
如上所示,既然缺少组件,那么安装libev.x86_64, 如下所示,本地yum源安装libev.so.4失败,只能从网上下载libev-4.15-1.el5.rf.x86_64.rpm,网址为http://rpmfind.net/linux/rpm2html/search.php
[root@DB-Server tmp]# yum -y install libev.x86_64
Loaded plugins: product-id, security, subscription-manager
Updating Red Hat repositories.
Setting up Install Process
No package libev.x86_64 available.
Nothing to do
[root@DB-Server tmp]# rpm -ivh libev-4.15-1.el5.rf.x86_64.rpm
warning: libev-4.15-1.el5.rf.x86_64.rpm: Header V3 DSA signature: NOKEY, key ID 6b8d79e6
Preparing... ########################################### [100%]
1:libev ########################################### [100%]
[root@DB-Server tmp]# yum list | grep "perl-DBD-MySQL"
perl-DBD-MySQL.x86_64 3.0007-2.el5 media
[root@DB-Server tmp]# yum install perl-DBD-MySQL
安装 perl-DBD-MySQL时,就会遇到大量类似下面错误
file /usr/bin/msql2mysql from install of mysql-5.0.77-4.el5_6.6.x86_64 conflicts with file from package MySQL-client-advanced-5.6.20-1.rhel5.x86_64
file /usr/bin/mysql from install of mysql-5.0.77-4.el5_6.6.x86_64 conflicts with file from package MySQL-client-advanced-5.6.20-1.rhel5.x86_64
file /usr/bin/mysql_find_rows from install of mysql-5.0.77-4.el5_6.6.x86_64 conflicts with file from package MySQL-client-advanced-5.6.20-1.rhel5.x86_64
file /usr/bin/mysql_waitpid from install of mysql-5.0.77-4.el5_6.6.x86_64 conflicts with file from package MySQL-client-advanced-5.6.20-1.rhel5.x86_64
file /usr/bin/mysqlaccess from install of mysql-5.0.77-4.el5_6.6.x86_64 conflicts with file from package MySQL-client-advanced-5.6.20-1.rhel5.x86_64
遇到这个错误是因为没有安装MySQL-shared-compat组件,安装了MySQL-shared-compat-advanced-5.6.20-1.rhel5.x86_64.rpm后,然后使用yum install perl-DBD-MySQL就不会遇到conflict with file的错误
[root@DB-Server tmp]# rpm -qa | grep -i mysql
MySQL-server-advanced-5.6.20-1.rhel5
MySQL-client-advanced-5.6.20-1.rhel5
[root@DB-Server tmp]# rpm -ivh MySQL-shared-compat-advanced-5.6.20-1.rhel5.x86_64.rpm
Preparing... ########################################### [100%]
1:MySQL-shared-compat-adv########################################### [100%]
[root@DB-Server tmp]# yum install perl-DBD-MySQL
[root@DB-Server tmp]# rpm -ivh percona-xtrabackup-24-2.4.6-2.el5.x86_64.rpm
warning: percona-xtrabackup-24-2.4.6-2.el5.x86_64.rpm: Header V4 DSA signature: NOKEY, key ID cd2efd2a
Preparing... ########################################### [100%]
1:percona-xtrabackup-24 ########################################### [100%]
[root@DB-Server tmp]#