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

System Information
  • Strapi Version: v4
  • Operating System: macOS
  • Database: mySQL
  • Node Version: 16.15.0
  • NPM Version: 8.5.5
  • Yarn Version: 1.22.18

I am trying to connect my strapi app with MySQL database, for the same I am using the mySQL with docker (I have the latest version of sql in that image). After creating the app using custom method when I run the npm run develop, the command fails with an error:

debug: ⛔️ Server wasn't able to start properly.
[2022-05-16 17:44:06.850] error: ER_NOT_SUPPORTED_AUTH_MODE: Client does not support authentication protocol requested by server; consider upgrading MySQL client
Error: ER_NOT_SUPPORTED_AUTH_MODE: Client does not support authentication protocol requested by server; consider upgrading MySQL client

You have to check “Use Legacy Password Encryption” in your mysql installation.
On mac if you have mysql installed you can change it under: system preferences, MySQL, Initialise Database.

after I do that, I have another error:
code: ‘ER_ACCESS_DENIED_ERROR’,
errno: 1045,
sqlMessage: “Access denied for user ‘root’@‘localhost’ (using password: YES)”,
sqlState: ‘28000’,
fatal: true

1 Like

Did you fix this error? I have the same problem with you :frowning:

isn’t this a mysql authentication issue?

There is some good information at the bottom of this thread:

You can now use the mysql2 package instead ad also mentioned in the note at the bottom of the strapi documentation: