install_driver(mysql) failed,installfailed
安裝好了mysql監控神器innotop,正得意,innotoop不可用,其錯誤提示為install_driver(mysql) failed: Can't load '/usr/lib64/perl5/vendor_perl/5.8.8/x86_64-linux-thread-multi/auto/DBD/mysql/mysql.so' for module DBD::mysql: libmysqlclient.so.15: cannot open shared object file:...經查原有又是DBD惹的禍,這個問題已經發生過好幾次了。
1、故障現象
[root@dbsrv1 ~]# cat /etc/issue
CentOS release 5.11 (Final)
Kernel \r on an \m
[root@dbsrv1 ~]# innotop
localhost PROCESSLIST_NO_IS: install_driver(mysql) failed:
Can't load '/usr/lib64/perl5/vendor_perl/5.8.8/x86_64-linux-thread-multi/auto/DBD/mysql/mysql.so'
for module DBD::mysql: libmysqlclient.so.15: cannot open shared object file: No such file or directory at
/usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi/DynaLoader.pm line 230. at (eval 504) line 3
Compilation failed in require at (eval 504) line 3.
Perhaps a required shared library or dll isn't installed where expected
at /usr/bin/innotop line 7601
2、安裝perl-DBD-MySQL
[root@dbsrv1 ~]# yum install perl-DBD-MySQL
Loaded plugins: fastestmirror, security
Repository base is listed more than once in the configuration
Repository updates is listed more than once in the configuration
Repository extras is listed more than once in the configuration
Repository centosplus is listed more than once in the configuration
Repository contrib is listed more than once in the configuration
Loading mirror speeds from cached hostfile
* base: mirrors.163.com
* epel: mirrors.ustc.edu.cn
* extras: mirrors.skyshe.cn
* updates: mirrors.pubyun.com
Setting up Install Process
Package perl-DBD-MySQL-3.0007-2.el5.x86_64 already installed and latest version
Nothing to do
###上面描述已經perl-DBD-MySQL已經安裝,且為最新的版本
[root@dbsrv1 yum.repos.d]# rpm -qa |grep -i dbd
perl-DBD-MySQL-3.0007-2.el5
###首先先卸載perl-DBD-MySQL,然後再次使用yum安裝
[root@dbsrv1 yum.repos.d]# rpm -e --nodeps perl-DBD-MySQL-3.0007-2.el5
[root@dbsrv1 yum.repos.d]# rpm -qa |grep -i dbd
[root@dbsrv1 yum.repos.d]# yum install perl-DBD-MySQL
Loaded plugins: fastestmirror, security
Repository base is listed more than once in the configuration
Repository updates is listed more than once in the configuration
Repository extras is listed more than once in the configuration
Repository centosplus is listed more than once in the configuration
Repository contrib is listed more than once in the configuration
Loading mirror speeds from cached hostfile
* base: mirrors.163.com
* epel: mirrors.ustc.edu.cn
* extras: mirrors.skyshe.cn
* updates: mirrors.pubyun.com
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package perl-DBD-MySQL.x86_64 0:3.0007-2.el5 set to be updated
--> Processing Dependency: libmysqlclient.so.15(libmysqlclient_15)(64bit) for package: perl-DBD-MySQL
--> Processing Dependency: libmysqlclient.so.15()(64bit) for package: perl-DBD-MySQL
--> Running transaction check
---> Package mysql.x86_64 0:5.0.95-5.el5_9 set to be updated
--> Finished Dependency Resolution
Dependencies Resolved
=============================================================================================================
Package Arch Version Repository Size
=============================================================================================================
Installing:
perl-DBD-MySQL x86_64 3.0007-2.el5 base 148 k
Installing for dependencies:
mysql x86_64 5.0.95-5.el5_9 base 4.9 M
Transaction Summary
=============================================================================================================
Install 2 Package(s)
Upgrade 0 Package(s)
Total download size: 5.0 M
Is this ok [y/N]: y
Downloading Packages:
(1/2): perl-DBD-MySQL-3.0007-2.el5.x86_64.rpm | 148 kB 00:00
(2/2): mysql-5.0.95-5.el5_9.x86_64.rpm | 4.9 MB 00:11
-------------------------------------------------------------------------------------------------------------
Total 406 kB/s | 5.0 MB 00:12
Running rpm_check_debug
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
Installing : mysql 1/2
warning: /etc/my.cnf created as /etc/my.cnf.rpmnew
Installing : perl-DBD-MySQL 2/2
Installed:
perl-DBD-MySQL.x86_64 0:3.0007-2.el5
Dependency Installed:
mysql.x86_64 0:5.0.95-5.el5_9
Complete!
###再次啟用innotop正常
[root@dbsrv1 yum.repos.d]# innotop
3、關於perl-DBD-MySQL
DBD::mysql is the Perl5 Database Interface driver for the MySQL database. In other words: DBD::mysql is an interface between the Perl programming language and the MySQL programming API that comes with the MySQL relational database management system. Most functions provided by this programming API are supported. Some rarely used functions are missing, mainly because no-one ever requested them. :-)
http://search.cpan.org/dist/DBD-mysql/lib/DBD/mysql.pm
http://search.cpan.org/dist/DBD-mysql/
遭遇DBD::mysql::dr::imp_data_size unexpectedly
Temporary failure in name resolution