从上面的结果可以得知,已经存在libmysqlclient.so.18文件了,但是版本不符,因此还是需要这个libmysqlclient.so.16文件,那么从哪里可以找到呢?最简便的方法就是安装MySQL RPM安装套件中的MySQL-shared-compat包:(我的MySQL是编译安装的,但是在同版本的RPM套件中MySQL-shared-compat-5.6.16-1.el6.i686.rpm包却提供了必要的libmysqlclient.so.16文件,就这点来说编译部署还是没有RPM安装来的全面)
# 我的MySQL版本:5.6.16
[root@beanvm ~]# rpm -ivh MySQL-shared-compat-5.6.16-1.el6.i686.rpm
Preparing... ########################################### [100%]
1:MySQL-shared-compat ########################################### [100%]
再次安装perl-DBD-MySQL-4.013-3.el6.i686.rpm就可以了
[root@beanvm Packages]# rpm -ivh perl-DBD-MySQL-4.013-3.el6.i686.rpm
warning: perl-DBD-MySQL-4.013-3.el6.i686.rpm: Header V3 RSA/SHA256 Signature, key ID fd431d51: NOKEY
Preparing... ########################################### [100%]
1:perl-DBD-MySQL ########################################### [100%]
综上所述,安装DBI建议顺序安装三个包:
# DBI安装包:
perl-DBI-1.609-4.el6.i686.rpm
# 必备的库文件包,注意版本,这里主要提供的是libmysqlclient.so.16
MySQL-shared-compat-5.6.16-1.el6.i686.rpm
# DBD组件
perl-DBD-MySQL-4.013-3.el6.i686.rpm
成功后就可以使用Benchmark进行基准测试了,下面是测试插入性能的部分数据:
[mysql@beanvm sql-bench]$ ./test-insert --server=mysql --user=root --password=mysql --log
Testing server 'MySQL 5.6.16' at 2014-02-15 16:36:17
Testing the speed of inserting data into 1 table and do some selects on it.
The tests are done with a table that has 100000 rows.
Generating random keys
Creating tables
Inserting 100000 rows in order
Inserting 100000 rows in reverse order
Inserting 100000 rows in random order
Time for insert (300000): 879 wallclock secs ( 3.51 usr 1.21 sys + 0.00 cusr 0.00 csys = 4.72 CPU)
Testing insert of duplicates
Time for insert_duplicates (100000): 18 wallclock secs ( 3.81 usr 1.41 sys + 0.00 cusr 0.00 csys = 5.22 CPU)
Test of prepared+execute/once prepared many execute selects
Time for prepared_select (100000): 31 wallclock secs (10.87 usr 1.81 sys + 0.00 cusr 0.00 csys = 12.68 CPU)
......