Mysql – install_driver(thesql) failed: Unable to get DBI state function. DBI not loaded

MySQLotrsperlsles11

I installed OTRS from a rpm and the web installer /orts/installer.pl stops with:

Error during AJAX communication. Status: error, Error: Internal Server
Error

Apache error_log

install_driver(mysql) failed: Unable to get DBI state function. DBI
not loaded.

/opt/otrs/bin/otrs.CheckModules.pl

DBD::mysql…………………..FAILED! Not all prerequisites for this module correctly installed.
YAML::XS…………………….Not installed! (required – use "perl -MCPAN -e shell;" – )

But sudo zypper install perl-DBD-mysql-4.021-27.2.x86_64.rpm has Nothing to do. and mysql configuration is set as the manual requested.

System is SLES 11 SP2 (x86_64) and special thing: No internet connection!

I guess the question is: Why doesn't perl find DBI:mysql while it's installed?

Update

list_the_installed_modules

/usr/lib/perl5/vendor_perl/5.10.0/x86_64-linux-thread-multi/Bundle/DBI.pm
/usr/lib/perl5/vendor_perl/5.10.0/x86_64-linux-thread-multi/Bundle/DBD/mysql.pm
/usr/lib/perl5/vendor_perl/5.10.0/x86_64-linux-thread-multi/DBD/mysql.pm
/usr/lib/perl5/vendor_perl/5.10.0/x86_64-linux-thread-multi/DBD/mysql/GetInfo.pm

Could I have installed the wrong rpm?

Best Answer

This error message does mean that perl can't find the DBD::mysql module. So if the rpm package is installed, this leads me to think that you might not be using the system perl.

Can you show us:

which perl

and also:

/usr/bin/perl /opt/otrs/bin/otrs.CheckModules.pl

In general it is not a good idea to install your own perl on top of the existing system perl. This can break other installed packages that expect a certain perl version.

If you want to use different perls on your system, use tools like plenv or perlbrew

Also, OTRS typically works with the system perl on SLES 11.

Related Topic