ocPortal cannot connect to the MySQL server with the configured username and password.
This advice is not relevant if you got the larger error message: Access denied for user xxx to database xxx
How did this happen?
This could happen for a number of reasons:
You have configured ocPortal to use the wrong MySQL username and/or password.
The MySQL username and/or password you configured have been changed or removed.
You have moved your website to a new web server and not correctly updated the ocPortal configuration and/or set up your database.
If your MySQL server and web server are different physical machines it is important MySQL is configured to allow connections from the web server machine (or all machines) for your configured username. This is not the default configuration.
How do I fix it?
If you have just moved/installed your website then you likely entered the wrong username/password. Your web hosting control panel likely provides documentation an interface where you can configure MySQL usernames and password. Note that on some web hosts you enter a username but it gets given a prefix - if this is the case it should be indicated in the web hosting control panel.
If you have recently changed your MySQL username/password or moved web servers you can edit your configured 'Installation Options'. Call up the '/config_editor.php' script (by URL) and log in to it. You can update your configuration from there.
If your MySQL server and web server are different physical machines then you will need to either change that situation, or make some changes to your MySQL credentials. It may be as simple as choosing to allow 'Any host' to make connections. Some web hosting control panels allow you to change these settings.
If not, please let us know how we can do better (please try and propose any bigger ideas in such a way that they are fundable and scalable).
If so, please let others know about Composr whenever you see the opportunity or support me on Patreon.
If my reply is too Vulcan or expressed too much in business-strategy terms, and not particularly personal, I apologise. As a company & project maintainer, time is very limited to me, so usually when I write a reply I try and make it generic advice to all readers. I'm also naturally a joined-up thinker, so I always express my thoughts in combined business and technical terms. I recognise not everyone likes that, don't let my Vulcan-thinking stop you enjoying Composr on fun personal projects.
If my response can inspire a community tutorial, that's a great way of giving back to the project as a user.