From Bugzilla Helper: User-Agent: Mozilla/5.0 (compatible; Konqueror/3.0.0-10; Linux) Description of problem: mysqlhotcopy from the mysql package requires the perl-DBI package or else it fails with the following error: Can't locate DBI.pm in @INC (@INC contains: /usr/lib/perl5/5.6.1/i386-linux /usr/lib/perl5/5.6.1 /usr/lib/perl5/site_perl/5.6.1/i386-linux /usr/lib/perl5/site_perl/5.6.1 /usr/lib/perl5/site_perl/5.6.0/i386-linux /usr/lib/perl5/site_perl/5.6.0 /usr/lib/perl5/site_perl /usr/lib/perl5/vendor_perl/5.6.1/i386-linux /usr/lib/perl5/vendor_perl/5.6.1 /usr/lib/perl5/vendor_perl .) at /usr/bin/mysqlhotcopy line 8. BEGIN failed--compilation aborted at /usr/bin/mysqlhotcopy line 8. Should perl-DBI be added to the requirements of the mysql package in order to reduce confusion? Version-Release number of selected component (if applicable): Red Hat Linux 7.3 mysql-3.23.49-3 How reproducible: Always Steps to Reproduce: 1. Default install with mysql. 2. Attempt to use mysqlhotcopy Actual Results: Error message. Expected Results: It should work.
mysql also requires perl-DBD-MySQL, or else you get this pleasant message: install_driver(mysql) failed: Can't locate DBD/mysql.pm in @INC (@INC contains: /usr/lib/perl5/5.6.1/i386-linux /usr/lib/perl5/5.6.1 /usr/lib/perl5/site_perl/5.6.1/i386-linux /usr/lib/perl5/site_perl/5.6.1 /usr/lib/perl5/site_perl/5.6.0 /usr/lib/perl5/site_perl /usr/lib/perl5/vendor_perl/5.6.1/i386-linux /usr/lib/perl5/vendor_perl/5.6.1 /usr/lib/perl5/vendor_perl .) at (eval 1) line 3. Perhaps the DBD::mysql perl module hasn't been fully installed, or perhaps the capitalisation of 'mysql' isn't right. Available drivers: ExampleP, Proxy. at /usr/bin/mysqlhotcopy line 162
Perl is already required, so I should probably add these.
Done, in mysql-3.23.50-2
There is an issue (in my head and machine, at least) with putting the perl-DBD-MySQL dependency on the mysql (the client package) versus mysql-server (the part that actually requires perl-DBD-MySQL). I can't upgrade the "mysql" package because it would break perl-DBD- MySQL's dependency on libmysqlclient.so.10. But I can't rebuild perl- DBD-MySQL because that requires mysql-devel (which requires mysql). The solution is to move the perl-DBD-MySQL dependency to the server package.