On 13/01/2012 17:37, Rafael Muneton wrote:
Hello everyone:

I have an application where i use Perl, with Apache and MySQL on Ubuntu 11.04 
and everything is working OK.
But in the last few days I'm trying to upgrade my Ubuntu to the 11.10
Version and I cannot connect to the database, I'm getting this error
message:

install_driver(mysql) failed: DBI/DBD internal structure mismatch (dr:84/88, 
db:84/88, st:108/116, fd:84/84), you probably need to rebuild the DBD driver 
(or possibly the DBI).
Compilation failed in require at (eval 17) line 3.

Any help would be appreciated.
Thank's in advance.

Negrazo

Carpe diem, quam minimum credula postero!

DBI contains a structure which C based DBDs build with. If you upgrade DBI and don't rebuild your DBDs there is a mismatch which the code detects. Upgrading your Ubuntu probably upgraded DBI but not DBD::mysql (perhaps you did not install it from Ubuntu package manager and built it yourself). You need to either a) rebuild DBD::mysql b) install the latest DBD::mysql which matches the DBI in Ubuntu packages c) stop using your system perl and use your own Perl (see something like perlbrew) and then you should be mostly immune from this in the future (I say mostly because many Perl modules depend on libraries in the system).

Martin

Reply via email to