Error: Client does not support authentication protocol requested by server; consider upgrading MySQL client

This error occurs because you are using MySQL Connector/J 5.1.45 or earlier. MySQL 8 introduced a new authentication mechanism (caching_sha2_password) that is not supported in those versions of the driver.

You will need to upgrade to MySQL Connector/J 5.1.46 or higher. The latest version of the MySQL Connector/J driver at time of writing is 8.0.15. You can download it from https://dev.mysql.com/downloads/connector/j/ or specify the right version in Maven/Gradle, etc.


If you are installing Jasper server with MySQL-8. And you're getting above error OR 'Access denied for user root@localhost' while running js-install-ce.bat / js-install-ce.bat test .

  1. Run mysql query: SELECT user,authentication_string,plugin,host FROM mysql.user;

Check the plugin column for ‘root’ user, it has to be ‘mysql_native_password’. If the plugin value is ‘caching_sha2_password’ then you need to run update query: ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'root';

OR

  1. Re-Install MySQL. You just have to re-install MySQL-8 with Authentication Method as: "Use Legacy Authentication Method(Retain MySQL 5.x Compatibility)", as given in snapshot: enter image description here