MySQL access denied errors happen when the user password is wrong, the user was not assigned to the database, or the application is trying to connect with an incomplete prefixed username.
Common symptoms
- Imports fail with access denied
- The app cannot connect after database recreation
- phpMyAdmin works but the app still fails
Troubleshooting steps
- Reset the database user's password in cPanel and store it securely.
- Re-add the database user to the database and grant the required privileges.
- Double-check the full cPanel-prefixed username in the application's config file.
- Verify the application is connecting to the same database you tested in phpMyAdmin.
- If a migration script modified the config automatically, compare it against the current cPanel database details manually.
Additional notes
- Database access can fail even when the user exists if it is not linked to that specific database.
- Copying a config from another server often leaves the old prefixed username in place.
When to contact support
Contact support if a newly reset user still cannot authenticate to the assigned database.