http://www.perlmonks.org?node_id=895420


in reply to DBD::mysql error

Check into which directory MySQL libraries were installed, probably somewhere in /usr/local tree since you've installed if from source. Make sure that /etc/ld.so.conf contains that directory. After that run ldconfig.

HTH

Replies are listed 'Best First'.
Re^2: DBD::mysql error
by liony301 (Novice) on Mar 25, 2011 at 17:31 UTC

    Thanks Andal, I've mysql library path mentioned in mysql.conf file under /etc/ld.so.conf.d/ directory.


    Here are the content -
    cat mysql.conf /app/mysql/lib/mysql/

    Here is the specific output for mysql after I ran ldconfig -

    sudo /sbin/ldconfig -vv /app/mysql/lib/mysql: libmysqlclient_r.so.16 -> libmysqlclient_r.so.16.0.0 libmysqlclient.so.16 -> libmysqlclient.so.16.0.0

      As your ldd output shows, mysql.so (the shared object belonging to DBD::mysql) hasn't been linked against libmysqlclient.so, so no messing with dynamic loader search paths or ldconfig is going to help here, because the loader doesn't even look for the latter library...  (it's kind of like fiddling with @INC without having use Module in the code).

      Most likely, this is the result of something having gone wrong while building DBD::mysql — presumably the mysql library and/or the header files were not found at build time.  So you'll have to rebuild the module, making sure the lib/header files are found this time.  See the INSTALL file for how to do a manual installation and specify the respective options to Makefile.PL that tell the build process where to find things.

        Thank you Eliyaa. Sorry about late reply. I think I messed up with trying different versions of the module to resolve the problem. I cleaned up and reinstalled the module. And apparently this has resolved the issue.

        I've passed on the system to developers and waiting for their response.

        Once again Thank you all for your help and guidance.
        Have a wonderful evening.