I’ve copied a working script from one server to another (upgrading a web
application server from Cnetos6 to centos8) and I keep getting the error:
[Tue Jun 02 10:29:32.289698 2020] [:error] [pid 3729:tid 140210163652352]
DBD::mysql initialisation failed: Can't locate object method "driver" via
package "DBD::mysql" at /usr/lib64/perl5/vendor_perl/DBI.pm line
827.\n\nPerhaps the capitalisation of DBD 'mysql' isn't right. at
/home/allwebfiles/perl/badges/choose.pl line 54.\n
Mysql (actually MariaDB) is installed and working. both DBI and DBD::MySQL were
installed via the CentOS repositories. (perl-DBI perl-DBD-MySQL packages)
DBI itself is functional since other DB methods are working Oracle, for example.
This is the (working on the other server!) code to establish the database
handle:
my $dsn = "DBI:mysql:database=$dbname;host=$dbhost;port=$dbport" or die
$DBI::errstr;
my $dbh = DBI->connect($dsn, $dbuser, $dbpass,{'RaiseError' => 1});
Pretty standard stuff. I'm not sure why this is happening. It is NOT the error
being reported...
--
Bruce Johnson
University of Arizona
College of Pharmacy
Information Technology Group
Institutions do not have opinions, merely customs