Hi, I installed LAMP on Ubuntu 14.04 app, but I can’t connect to MySql from PHP. I can connect with the same username and password from console. I can see that the database I’m connecting to exists. But PHP returns
Database access denied!
I’ve tried to use as a Hostname localhost, 127.0.0.1, 0.0.0.0, (those three with port :3306). Nothing worked.
I went through all QA and tutorials I could find, but nothing helped. Anyone has some idea what I’m doing wrong?
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.
Click below to sign up and get $100 of credit to try our products over 60 days!
This comment has been deleted
Ok, so the solution was to rebuild the droplet with clean Ubuntu 14.04 and install LAMP by myself. Now everything works like a charm.
Thanks for your answer. I created new user by the digitalocean tutorial https://www.digitalocean.com/community/tutorials/how-to-create-a-new-user-and-grant-permissions-in-mysql which is variation of what you wrote.
The funny thing is that I can log in with this user (root as well) and see the database via command line (secret variables are in {…}):
But when I want to connect with the same access information on the same server:
host: localhost username: {username} password: {password} database: {database}
I get “Database access denied!” :(
From what I am reading, you created a new database user for the website but you can’t connect. So am guessing that the user doesn’t have the required privileges, try to run the following commands from mysql root user:
grant all privileges on ‘database’. to ‘user’@127.0.0.1 identified by ‘password’; flush privileges;*
Replace database, user and password with your own without removing the single quotes.