安装好了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已经安装。且为最新的版本号
###首先先卸载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
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
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. :-)