Ok, you probably got here because you just googled getting the “Bad Handshake” with perl’s DBD::mysqlPP with old_passwords=1 set on the server. To fix, change old_passwords=0 on the server, restart the server, then create a new account using the new password types, then use that one to connect to the DB. Once you do this, you can change the server back to old_passwords=1 (the setting only affects how mysql creates passwords, not validates them) and restart mysql.

Tweet
submit to reddit