Beefy Boxes and Bandwidth Generously Provided by pair Networks
We don't bite newbies here... much
 
PerlMonks  

Re: plugin 'mysql_old_password' cannot be loaded

by marto (Cardinal)
on Feb 15, 2019 at 09:47 UTC ( [id://1229942]=note: print w/replies, xml ) Need Help??


in reply to plugin 'mysql_old_password' cannot be loaded

Different releases of Strawberry Perl ship with different versions of mysql. Some time ago mysql changed how password hashing worked. This could explain why the older perl works while an new one doesn't. Don't copy modules between perls which are different major releases. See Perl 5 and Binary Compatibility.

  • Comment on Re: plugin 'mysql_old_password' cannot be loaded

Replies are listed 'Best First'.
Re^2: plugin 'mysql_old_password' cannot be loaded
by frazap (Monk) on Feb 15, 2019 at 12:02 UTC

    Thanks for helping

    So the only option is to create a new user and password on the mysql server that would have the same rights as the old one, so that I could use this new one with a recent client, and keep the old one with older client ?

    F

      Marto didn't say anything about logins or passwords. edit:(he did mention password hashing, my mistake.) Marto's comments were about the Perl module you copied being a mismatch for the portable Perl you installed. You need to install the module in your portable Strawberry Perl using cpan. Open a command prompt and run portableshell.bat in the portable Strawberry Perl folder. Then run cpan and install the module.

      Edit:I could be wrong but I believe cpan will let you install an older version of the module so you could find the version of the working one and install it to the new Strawberry Perl. Here is an article about how to do it. The example given is cpan SAMV/Set-Object-1.28.tar.gz for installing a specific version of Set::Object with author SAMV.

        Like many DBDs the driver is bound to a client library (and dev headers). The version of this client library is different. See Re^5: plugin 'mysql_old_password' cannot be loaded. Building (manually or otherwise) an older version of DBD::mysql against the same client library (etc) won't resolve the issue I believe.

        I realize it's probably not a question involving perl but rather about connecting to mysql. Sorry, but it would help me to see if I could solve this only from the perl side or if I had to ask my DB Admin...

        (And ask what ? creating a new user for my DB ? Setting old_passwords to ON ?)

        Installing an older version of which one ? DBIx::Class ? DBI ? DBD::Mysql ?

        I'm sure I'm not the first one being hit by that.

        But anyway thanks for the proposal, I will try that if everything else fails.

        Wich module should I downgrade ?

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://1229942]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others rifling through the Monastery: (4)
As of 2024-04-25 16:35 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found