ArtsAutosBooksBusinessEducationEntertainmentFamilyFashionFoodGamesGenderHealthHolidaysHomeHubPagesPersonal FinancePetsPoliticsReligionSportsTechnologyTravel
  • »
  • Technology»
  • Internet & the Web

DigitalOcean Error Establishing a Database Connection Finally Solved!

Updated on May 4, 2016

DigitalOcean`s droplets are great and I use them all the time for my new websites because even though content is very highly regarded by Google, website speed is also one important metric and customers or visitors have a more pleasant experience when they visit a fast loading website. I personally click away in about 5 seconds if a page doesn`t load and I think I`m a pretty patient user.

The Problem

When you first create a droplet (we are talking about a Wordpress droplet), everything is automaticly deployed and your cloud server is ready in less than a minute. This is very good when you don`t want to spend time configuring everything or you are not knowledgeable in Ubuntu, you just want your Wordpress to work perfectly.


I have many wordpress droplets and I encountered this problem on all of thema few minutes or hours after they were created:

When I finally wanted to work on the website I was greeted with Error Establishing a Database Connection

For some time I was wondering how is that possible, a new droplet with this kind of issue? I was thinking it`s not a properly configured image etc, then I started digging in deeper because on the discussion forums I saw that people haven`t managed to fix this problem and I am sure many customers left DigitalOcean because of it.


First:

  • I tried to reboot but the problem would come back shortly
  • I tried to update all the packages - same result
  • I created a swap file to be sure mysql would not run out of memory - same result, no improvement

Then I looked in all the error logs and to my surprise, I found the reason why mysql was crashing the the annoying error would pop up! A xmlrpc attach which by the looks of it, is targeting all the DigitalOcean droplets or ip`s. Check out the picture attached below

XMLRPC Attack Log

To see if you`re in the same situation, log on your droplet and type in the following command:

For Apache:

grep xmlrpc /var/log/apache2/access.log



For Nginx:



grep xmlrpc /var/log/nginx/access.log
 

If the result is many connections to the xmlrpc.php file, then you`re 
"lucky", you can fix this problem easily.

The Solution

The fix is rather easy to implement, all you need to do is type in the following:

sudo a2enconf block-xmlrpc



then restart Apache by typing:



sudo service apache2 restart


 

Solution 2

You can also block the attack by installing the JetPack plugin in Wordpress and enabling the "Protect" feature.

I hope everybody will be happy to have finally found the fix to this issue. Please leave your comment and share the article if it has helped you.

Sebastian

Comments

    0 of 8192 characters used
    Post Comment

    No comments yet.