Deploy fullstack application ( frontend : vue.js, backend: node.js, database: mysql )

Posted August 26, 2019 3.9k views
UbuntuMySQLNode.jsDevelopmentInitial Server Setup

I have created 2 droplets one for my frontend and another for my backend.
I have linked both of them using the IP Address.

But When I am trying to make get request using Postman.
It is throwing this error:

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

And when I am trying to access it from my vue.js application.
It is throwing this error:

Please help

1 comment

These answers are provided by our Community. If you find them useful, show some love by clicking the heart. If you run into issues leave a comment, or add your own answer to help others.

Submit an Answer
1 answer


Are you using the new DigitalOcean Managed MySQL service? If so you might have to create a new user with authentication type mysql_native_password or alter your doadmin user so that it does not use zcachingsha2passwordz but mysql_native_password. That way your node should be able to connect to the MySQL database.

You can take a look at this answer here on how to do that:

Also, I would recommend testing if you could connect from your backend droplet to your MySQL server using telnet:

  • First SSH to your backend droplet and then run:
telnet (^)mysql_server_ip(^) (^)mysql_port(^)

If the telnet command connects you fine, then it is not an issue with your firewall, so I would recommend that you share your config files here so that I could advise you further.