Connection failed: Access denied for user 'root'@'localhost'

Posted April 10, 2021 1.7k views
Linux BasicsMySQLDatabases

I am currently trying to host a movie database website on DigitalOcean.

I have set up a droplet with LAMP installed and managed to clone the repository from GitHub to /var/www/html. If I set a regular HTML page as the index, it works just fine. However, attempting to do the same with a PHP file presents me with the error seen in the title of the post. I have a .sql file containing the data and I can’t figure out where it should be uploaded to. I know this is a problem with the database, but I am unsure of how to solve it.

Using XAMPP to test locally works perfectly fine.

I realize this is a novice question and might come across as ignorant, but this is my first time hosting and using a Linux terminal.

Greatly appreciate any and all help.

Thank you.

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


It looks like your MySQL database credentials might be invalid. Presumably, you’ve specified these credentials somewhere in your PHP file.

You might need to adjust the database credentials you use to connect to the database on the Digital Ocean droplet.

These will be details like the MySQL host, username, database name, and password. Your local XAMPP environment will likely have different database credentials than the one you’ve configured on your droplet.

If you haven’t already, consult this guide on how to set a LAMP stack up on Digital Ocean.

From the error message, it looks like the database credentials are invalid.

No questions are ignorant. First time trying to setup hosting will be a bit rough but you’ll get the hang of it after a while :)

Best of luck!

by Mark Drake
by Erika Heidi
A "LAMP" stack is a group of open source software that is typically installed together to enable a server to host dynamic websites and web apps. This stack typically consists of the Linux operating system, the Apache web server, a MySQL database, and PHP, a dynamic content processor. This tutorial serves as a guide for installing these components on an Ubuntu 18.04 server.