Support » Fixing WordPress » ‘Data base connection error’ and massive DB connections

  • Oksana

    (@oksana_gu21)


    Hello

    I am not a technical person and I’ve been having massive problems with my WP web-site. I would really appreciate some help.

    Long story short (as possible):
    domain: countrysideliving.net/blog/ (gardening, cooking, crafts, etc).
    I have an html (old) part of my website which is working perfectly fine. The php part (see the address above) is down at the moment. It has been down for 4 times for the last 15 days, from several hours to 4 days max. The message says ‘database connection error’. The C-panel is either not working or working extremely slow. I can’t connect to it even via Filezilla now: (421 Too many connections (8) from this IP. Error: Could not connect to server).

    The usual WP recovery stuff (rename the plugin directory, check the .htaccess, etc) does not do anything.

    Justhost where I have a shared hosting was very unhelpful to put it nicely. They kept repeating: ‘it is not our problem, it’s yours. You need to optimise your site. You have too many DB connections’. The fact that my site had been working fine and just stopped working at some point while I did not make any changes or even new posts, but they don’t care. I should also add that it is a low season for my website now and I have about 15K visits a day while I usually have about 30K to 40K in higher seasons (spring, early autumn, Christmas time).

    I hired a developer to take a look at what was going on. He said it looks like DDOS attack because my traffic looked ‘crazy’ for a site that does not offer anything to download. I have screenshots to prove it but the numbers were as following:

    Nov. 8 SQL server has been running for 17 days.
    Received 74.4 Gib. Per hour 181 Mib.
    Sent 2.2 Tib. Per hour 5.4 Gig.
    Total 2.3 Tib. Per hour 5.5 Gig.
    Max. concurrent connections 74.
    Failed attempts 428.9 k. Per hour 1019.8 7.15%
    Aborted 345. Per hour 0.82 0.01%
    Total 6.000 k. Per hour 14.26 k 100%

    Nov. 19 SQL server has been running for 11 days.
    Received 59 Gib. Per hour 216.9 Mib.
    Sent 1.9 Tib. Per hour 6.9 Gig.
    Total 1.9 Tib. Per hour 7.1 Gig.
    Max. concurrent connections 109.
    Failed attempts 129 k. Per hour 0.46 1.01%
    Aborted 345. Per hour 0.82 0.01%
    Total 4.636 k. Per hour 16.66 k 100%

    The last data is from now. The previous one is from the other time the site was down for several days (so there were not supposed to be any connections at the time?). After working great for several days the site’s been down again right now already for a couple of hours.

    The developer says I should change for the virtual server and get away from Justhost shared as soon as I can. He also says he can’t do anything on Cpanel as it’s not a responsive tool. I am considering it but meanwhile I have my hosting paid with Justhost until 2019.

    Can anyone please suggest anything? What can I do to stop the DDOS attack if it is what is going on? How can I stop unwanted? connection to my DB? Any piece of advise please?

    Thank you for your time.

    Oksana

Viewing 9 replies - 1 through 9 (of 9 total)
  • Moderator t-p

    (@t-p)

    – Please check the error logs on your server for a more specific error message and see why it’s failing. If you need help locating them, ask your hosting provider to help you with that.
    – If you cannot find error logs or if you don’t find any helpful info in the error logs, try Enabling debugging

    Keith

    (@keithdriscoll)

    If you are unhappy with your host and your business is that important maybe you should look at the recommended WordPress hosts. Choosing a host is very important and personally I recommend Bluehost for shared hosting.

    You mentioned you hired a Web Dev, refer him to [ redacted due to WordPress trademark in domain ]. This may be helpful in resolving your issue.

    If your Web Dev is familiar with WordPress it should not be much of a project to backup and/or move your site to a more reputable host.

    • This reply was modified 2 years, 8 months ago by  Jan Dembowski. Reason: Redacted link for trademark reason
    Oksana

    (@oksana_gu21)

    @t-p

    Hello, thanks for your time.

    I have had debug installed since I started having problems. Here is the content of my wp-content/debug.log file for the 6th of November:

    
    06-Nov-2016 22:09:44 UTC] PHP Warning:  mysql_connect(): User countr81_wrdp1 already has more than 'max_user_connections' active connections in /home3/countr81/public_html/blog/wp-includes/wp-db.php on line 1560
    [06-Nov-2016 22:09:44 UTC] PHP Warning:  mysql_close() expects parameter 1 to be resource, boolean given in /home3/countr81/public_html/blog/wp-includes/wp-db.php on line 669
    [06-Nov-2016 22:09:45 UTC] PHP Warning:  mysql_close() expects parameter 1 to be resource, boolean given in /home3/countr81/public_html/blog/wp-includes/wp-db.php on line 669
    [06-Nov-2016 22:09:46 UTC] PHP Warning:  mysql_close() expects parameter 1 to be resource, boolean given in /home3/countr81/public_html/blog/wp-includes/wp-db.php on line 669
    [06-Nov-2016 22:09:46 UTC] PHP Warning:  mysql_connect(): User countr81_wrdp1 already has more than 'max_user_connections' active connections in /home3/countr81/public_html/blog/wp-includes/wp-db.php on line 1560
    [06-Nov-2016 22:09:46 UTC] PHP Warning:  mysql_close() expects parameter 1 to be resource, boolean given in /home3/countr81/public_html/blog/wp-includes/wp-db.php on line 669
    [06-Nov-2016 22:09:47 UTC] PHP Warning:  mysql_real_escape_string(): 26 is not a valid MySQL-Link resource in /home3/countr81/public_html/blog/wp-includes/wp-db.php on line 1169
    [06-Nov-2016 22:09:47 UTC] PHP Warning:  mysql_query(): 26 is not a valid MySQL-Link resource in /home3/countr81/public_html/blog/wp-includes/wp-db.php on line 1871
    [06-Nov-2016 22:09:47 UTC] PHP Warning:  mysql_ping(): 26 is not a valid MySQL-Link resource in /home3/countr81/public_html/blog/wp-includes/wp-db.php on line 1638
    [06-Nov-2016 22:09:48 UTC] PHP Warning:  mysql_connect(): User countr81_wrdp1 already has more than 'max_user_connections' active connections in /home3/countr81/public_html/blog/wp-includes/wp-db.php on line 1560
    [06-Nov-2016 22:09:48 UTC] PHP Warning:  mysql_connect(): User countr81_wrdp1 already has more than 'max_user_connections' active connections in /home3/countr81/public_html/blog/wp-includes/wp-db.php on line 1560
    [06-Nov-2016 22:09:48 UTC] PHP Warning:  mysql_connect(): User countr81_wrdp1 already has more than 'max_user_connections' active connections in /home3/countr81/public_html/blog/wp-includes/wp-db.php on line 1560
    [06-Nov-2016 22:09:48 UTC] PHP Warning:  mysql_close() expects parameter 1 to be resource, boolean given in /home3/countr81/public_html/blog/wp-includes/wp-db.php on line 669
    [06-Nov-2016 22:09:48 UTC] PHP Warning:  mysql_connect(): User countr81_wrdp1 already has more than 'max_user_connections' active connections in /home3/countr81/public_html/blog/wp-includes/wp-db.php on line 1560
    [06-Nov-2016 22:09:50 UTC] PHP Warning:  mysql_connect(): User countr81_wrdp1 already has more than 'max_user_connections' active connections in /home3/countr81/public_html/blog/wp-includes/wp-db.php on line 1560
    [06-Nov-2016 22:09:50 UTC] PHP Warning:  mysql_connect(): User countr81_wrdp1 already has more than 'max_user_connections' active connections in /home3/countr81/public_html/blog/wp-includes/wp-db.php on line 1560
    [06-Nov-2016 22:09:50 UTC] PHP Warning:  mysql_connect(): User countr81_wrdp1 already has more than 'max_user_connections' active connections in /home3/countr81/public_html/blog/wp-includes/wp-db.php on line 1560
    [06-Nov-2016 22:09:50 UTC] PHP Warning:  mysql_close() expects parameter 1 to be resource, boolean given in /home3/countr81/public_html/blog/wp-includes/wp-db.php on line 669
    [06-Nov-2016 22:09:51 UTC] PHP Warning:  mysql_close() expects parameter 1 to be resource, boolean given in /home3/countr81/public_html/blog/wp-includes/wp-db.php on line 669
    [06-Nov-2016 22:09:51 UTC] PHP Warning:  mysql_real_escape_string(): 26 is not a valid MySQL-Link resource in /home3/countr81/public_html/blog/wp-includes/wp-db.php on line 1169
    [06-Nov-2016 22:09:51 UTC] PHP Warning:  mysql_query(): 26 is not a valid MySQL-Link resource in /home3/countr81/public_html/blog/wp-includes/wp-db.php on line 1871
    [06-Nov-2016 22:09:51 UTC] PHP Warning:  mysql_ping(): 26 is not a valid MySQL-Link resource in /home3/countr81/public_html/blog/wp-includes/wp-db.php on line 1638
    [06-Nov-2016 22:09:51 UTC] PHP Warning:  mysql_close() expects parameter 1 to be resource, boolean given in /home3/countr81/public_html/blog/wp-includes/wp-db.php on line 669
    [06-Nov-2016 22:09:51 UTC] PHP Warning:  mysql_real_escape_string(): 26 is not a valid MySQL-Link resource in /home3/countr81/public_html/blog/wp-includes/wp-db.php on line 1169
    [06-Nov-2016 22:09:51 UTC] PHP Warning:  mysql_query(): 26 is not a valid MySQL-Link resource in /home3/countr81/public_html/blog/wp-includes/wp-db.php on line 1871
    [06-Nov-2016 22:09:51 UTC] PHP Warning:  mysql_ping(): 26 is not a valid MySQL-Link resource in /home3/countr81/public_html/blog/wp-includes/wp-db.php on line 1638
    [06-Nov-2016 22:09:51 UTC] PHP Warning:  mysql_close() expects parameter 1 to be resource, boolean given in /home3/countr81/public_html/blog/wp-includes/wp-db.php on line 669
    [06-Nov-2016 22:09:52 UTC] PHP Notice:  Вызванный метод конструктора класса WP_Widget в PBT_AdSpace_Widget считается <strong>устаревшим</strong> с версии 4.3.0! Используйте __construct(). in /home3/countr81/public_html/blog/wp-includes/functions.php on line 3767
    [06-Nov-2016 22:09:52 UTC] PHP Warning:  mysql_close() expects parameter 1 to be resource, boolean given in /home3/countr81/public_html/blog/wp-includes/wp-db.php on line 669
    [06-Nov-2016 22:09:53 UTC] PHP Warning:  mysql_connect(): User countr81_wrdp1 already has more than 'max_user_connections' active connections in /home3/countr81/public_html/blog/wp-includes/wp-db.php on line 1560
    [06-Nov-2016 22:09:54 UTC] PHP Warning:  mysql_connect(): User countr81_wrdp1 already has more than 'max_user_connections' active connections in /home3/countr81/public_html/blog/wp-includes/wp-db.php on line 1560
    [06-Nov-2016 22:09:54 UTC] PHP Notice:  Вызванный метод конструктора класса WP_Widget в PBT_AdSpace_Widget считается <strong>устаревшим</strong> с версии 4.3.0! Используйте __construct(). in /home3/countr81/public_html/blog/wp-includes/functions.php on line 3767
    [06-Nov-2016 22:09:55 UTC] PHP Warning:  mysql_close() expects parameter 1 to be resource, boolean given in /home3/countr81/public_html/blog/wp-includes/wp-db.php on line 669
    [06-Nov-2016 22:09:55 UTC] PHP Warning:  mysql_connect(): User countr81_wrdp1 already has more than 'max_user_connections' active connections in /home3/countr81/public_html/blog/wp-includes/wp-db.php on line 1560
    [06-Nov-2016 22:09:55 UTC] PHP Warning:  mysql_close() expects parameter 1 to be resource, boolean given in /home3/countr81/public_html/blog/wp-includes/wp-db.php on line 669
    [06-Nov-2016 22:09:55 UTC] PHP Warning:  mysql_close() expects parameter 1 to be resource, boolean given in /home3/countr81/public_html/blog/wp-includes/wp-db.php on line 669
    [06-Nov-2016 22:09:56 UTC] PHP Warning:  mysql_connect(): User countr81_wrdp1 already has more than 'max_user_connections' active connections in /home3/countr81/public_html/blog/wp-includes/wp-db.php on line 1560
    [06-Nov-2016 22:09:56 UTC] PHP Warning:  mysql_close() expects parameter 1 to be resource, boolean given in /home3/countr81/public_html/blog/wp-includes/wp-db.php on line 669
    [06-Nov-2016 22:09:57 UTC] PHP Warning:  mysql_connect(): User countr81_wrdp1 already has more than 'max_user_connections' active connections in /home3/countr81/public_html/blog/wp-includes/wp-db.php on line 1560
    [06-Nov-2016 22:09:57 UTC] PHP Warning:  mysql_close() expects parameter 1 to be resource, boolean given in /home3/countr81/public_html/blog/wp-includes/wp-db.php on line 669
    [06-Nov-2016 22:09:58 UTC] PHP Warning:  mysql_close() expects parameter 1 to be resource, boolean given in /home3/countr81/public_html/blog/wp-includes/wp-db.php on line 669
    [06-Nov-2016 22:09:59 UTC] PHP Warning:  mysql_connect(): User countr81_wrdp1 already has more than 'max_user_connections' active connections in /home3/countr81/public_html/blog/wp-includes/wp-db.php on line 1560
    [06-Nov-2016 22:09:59 UTC] PHP Notice:  Вызванный метод конструктора класса WP_Widget в PBT_AdSpace_Widget считается <strong>устаревшим</strong> с версии 4.3.0! Используйте <>__construct()</>. in /home3/countr81/public_html/blog/wp-includes/functions.php on line 3767
    [06-Nov-2016 22:09:59 UTC] PHP Warning:  mysql_connect(): User countr81_wrdp1 already has more than 'max_user_connections' active connections in /home3/countr81/public_html/blog/wp-includes/wp-db.php on line 1560
    [06-Nov-2016 22:10:00 UTC] PHP Warning:  mysql_close() expects parameter 1 to be resource, boolean given in /home3/countr81/public_html/blog/wp-includes/wp-db.php on line 669
    [06-Nov-2016 22:10:00 UTC] PHP Warning:  mysql_connect(): User countr81_wrdp1 already has more than 'max_user_connections' active connections in /home3/countr81/public_html/blog/wp-includes/wp-db.php on line 1560
    [06-Nov-2016 22:10:01 UTC] PHP Warning:  mysql_close() expects parameter 1 to be resource, boolean given in /home3/countr81/public_html/blog/wp-includes/wp-db.php on line 669
    [06-Nov-2016 22:10:01 UTC] PHP Warning:  mysql_real_escape_string(): 26 is not a valid MySQL-Link resource in /home3/countr81/public_html/blog/wp-includes/wp-db.php on line 1169
    [06-Nov-2016 22:10:01 UTC] PHP Warning:  mysql_query(): 26 is not a valid MySQL-Link resource in /home3/countr81/public_html/blog/wp-includes/wp-db.php on line 1871
    [06-Nov-2016 22:10:01 UTC] PHP Warning:  mysql_ping(): 26 is not a valid MySQL-Link resource in /home3/countr81/public_html/blog/wp-includes/wp-db.php on line 1638
    [06-Nov-2016 22:10:02 UTC] PHP Notice:  Вызванный метод конструктора класса WP_Widget в PBT_AdSpace_Widget считается <strong>устаревшим</strong> с версии 4.3.0! Используйте <>__construct()</>. in /home3/countr81/public_html/blog/wp-includes/functions.php on line 3767
    [06-Nov-2016 22:10:02 UTC] PHP Warning:  mysql_connect(): User countr81_wrdp1 already has more than 'max_user_connections' active connections in /home3/countr81/public_html/blog/wp-includes/wp-db.php on line 1560
    [06-Nov-2016 22:10:02 UTC] PHP Warning:  mysql_real_escape_string(): 26 is not a valid MySQL-Link resource in /home3/countr81/public_html/blog/wp-includes/wp-db.php on line 1169
    [06-Nov-2016 22:10:02 UTC] PHP Warning:  mysql_query(): 26 is not a valid MySQL-Link resource in /home3/countr81/public_html/blog/wp-includes/wp-db.php on line 1871
    [06-Nov-2016 22:10:02 UTC] PHP Warning:  mysql_ping(): 26 is not a valid MySQL-Link resource in /home3/countr81/public_html/blog/wp-includes/wp-db.php on line 1638
    [06-Nov-2016 22:10:02 UTC] PHP Notice:  Вызванный метод конструктора класса WP_Widget в PBT_AdSpace_Widget считается <strong>устаревшим</strong> с версии 4.3.0! Используйте <>__construct()</>. in /home3/countr81/public_html/blog/wp-includes/functions.php on line 3767
    [06-Nov-2016 22:10:02 UTC] PHP Warning:  mysql_close() expects parameter 1 to be resource, boolean given in /home3/countr81/public_html/blog/wp-includes/wp-db.php on line 669
    [06-Nov-2016 22:10:03 UTC] PHP Warning:  mysql_close() expects parameter 1 to be resource, boolean given in /home3/countr81/public_html/blog/wp-includes/wp-db.php on line 669
    [06-Nov-2016 22:10:03 UTC] PHP Warning:  mysql_close() expects parameter 1 to be resource, boolean given in /home3/countr81/public_html/blog/wp-includes/wp-db.php on line 669
    [06-Nov-2016 22:10:03 UTC] PHP Warning:  mysql_close() expects parameter 1 to be resource, boolean given in /home3/countr81/public_html/blog/wp-includes/wp-db.php on line 669
    [06-Nov-2016 22:10:05 UTC] PHP Warning:  mysql_connect(): User countr81_wrdp1 already has more than 'max_user_connections' active connections in /home3/countr81/public_html/blog/wp-includes/wp-db.php on line 1560
    [06-Nov-2016 22:10:05 UTC] PHP Warning:  mysql_connect(): User countr81_wrdp1 already has more than 'max_user_connections' active connections in /home3/countr81/public_html/blog/wp-includes/wp-db.php on line 1560
    [06-Nov-2016 22:10:05 UTC] PHP Notice:  Вызванный метод конструктора класса WP_Widget в PBT_AdSpace_Widget считается <strong>устаревшим</strong> с версии 4.3.0! Используйте <>__construct()</>. in /home3/countr81/public_html/blog/wp-includes/functions.php on line 3767
    [06-Nov-2016 22:10:06 UTC] PHP Warning:  mysql_connect(): User countr81_wrdp1 already has more than 'max_user_connections' active connections in /home3/countr81/public_html/blog/wp-includes/wp-db.php on line 1560
    [06-Nov-2016 22:10:06 UTC] PHP Warning:  mysql_connect(): User countr81_wrdp1 already has more than 'max_user_connections' active connections in /home3/countr81/public_html/blog/wp-includes/wp-db.php on line 1560
    [06-Nov-2016 22:10:07 UTC] PHP Warning:  mysql_close() expects parameter 1 to be resource, boolean given in /home3/countr81/public_html/blog/wp-includes/wp-db.php on line 669
    [06-Nov-2016 22:10:07 UTC] PHP Warning:  mysql_close() expects parameter 1 to be resource, boolean given in /home3/countr81/public_html/blog/wp-includes/wp-db.php on line 669
    [06-Nov-2016 22:10:08 UTC] PHP Warning:  mysql_close() expects parameter 1 to be resource, boolean given in /home3/countr81/public_html/blog/wp-includes/wp-db.php on line 669
    [06-Nov-2016 22:10:09 UTC] PHP Warning:  mysql_close() expects parameter 1 to be resource, boolean given in /home3/countr81/public_html/blog/wp-includes/wp-db.php on line 669
    [06-Nov-2016 22:10:09 UTC] PHP Warning:  mysql_connect(): User countr81_wrdp1 already has more than 'max_user_connections' active connections in /home3/countr81/public_html/blog/wp-includes/wp-db.php on line 1560
    [06-Nov-2016 22:10:10 UTC] PHP Warning:  mysql_close() expects parameter 1 to be resource, boolean given in /home3/countr81/public_html/blog/wp-includes/wp-db.php on line 669
    [06-Nov-2016 22:10:10 UTC] PHP Warning:  mysql_real_escape_string(): 26 is not a valid MySQL-Link resource in /home3/countr81/public_html/blog/wp-includes/wp-db.php on line 1169
    [06-Nov-2016 22:10:10 UTC] PHP Warning:  mysql_query(): 26 is not a valid MySQL-Link resource in /home3/countr81/public_html/blog/wp-includes/wp-db.php on line 1871
    [06-Nov-2016 22:10:10 UTC] PHP Warning:  mysql_ping(): 26 is not a valid MySQL-Link resource in /home3/countr81/public_html/blog/wp-includes/wp-db.php on line 1638
    [06-Nov-2016 22:10:10 UTC] PHP Notice:  Вызванный метод конструктора класса WP_Widget в PBT_AdSpace_Widget считается <strong>устаревшим</strong> с версии 4.3.0! Используйте <>__construct()</>. in /home3/countr81/public_html/blog/wp-includes/functions.php on line 3767
    [06-Nov-2016 22:10:12 UTC] PHP Warning:  mysql_close() expects parameter 1 to be resource, boolean given in /home3/countr81/public_html/blog/wp-includes/wp-db.php on line 669
    [06-Nov-2016 22:10:13 UTC] PHP Warning:  mysql_connect(): User countr81_wrdp1 already has more than 'max_user_connections' active connections in /home3/countr81/public_html/blog/wp-includes/wp-db.php on line 1560
    [06-Nov-2016 22:10:14 UTC] PHP Warning:  mysql_connect(): User countr81_wrdp1 already has more than 'max_user_connections' active connections in /home3/countr81/public_html/blog/wp-includes/wp-db.php on line 1560
    [06-Nov-2016 22:10:15 UTC] PHP Warning:  mysql_connect(): User countr81_wrdp1 already has more than 'max_user_connections' active connections in /home3/countr81/public_html/blog/wp-includes/wp-db.php on line 1560
    [06-Nov-2016 22:10:15 UTC] PHP Warning:  mysql_real_escape_string(): 26 is not a valid MySQL-Link resource in /home3/count
    
    • This reply was modified 2 years, 8 months ago by  Jan Dembowski.
    • This reply was modified 2 years, 8 months ago by  Jan Dembowski.
    • This reply was modified 2 years, 8 months ago by  Jan Dembowski.
    Oksana

    (@oksana_gu21)

    @keithdriscoll

    Thanks for the link. I will take a look at all of this providers. Do you also believe I should go for virtual server rather than shared? My Web Dev believes the shared ones are evil.

    Oksana

    (@oksana_gu21)

    @t-p

    Sorry, it’s huge, I just copied 1 day record. This is the last record in the file for some reason. Nothing after that though the debug is allowed in my config file

    thank you!

    Moderator Jan Dembowski

    (@jdembowski)

    Forum Moderator and Brute Squad

    Side note: I’ve cleaned up the log block (ish) and redacted that link. Using WordPress in the domain that way isn’t allowed and I would not recommend visiting that site.

    https://wordpress.org/about/domains/
    http://wordpressfoundation.org/trademark-policy/

    Oksana

    (@oksana_gu21)

    @jdembowski

    Thank you for cleaning up. Sorry, this is my first time and attaching files are not allowed so I thought I just copy for you people to see.

    Sorry, I do not understand what you mean by ‘Using WordPress in the domain that way isn’t allowed and I would not recommend visiting that site.’

    Oksana

    (@oksana_gu21)

    The site has been twice back up today for several minutes. Now it’s down again and the message is:

    ERROR 502 – BAD GATEWAY

    Why am I seeing this page?

    The server that your request has reached is acting as a gateway or proxy to fulfil the request made by your client.

    Web Browser => Web Front-End => Web Back-End

    This server (Web Front-End) received an invalid response from an upstream (Web Back-End) server it accessed to fulfil the request.

    In most cases this will not mean that the upstream server is down, but rather that the upstream server and the gateway/proxy do not agree on the protocol for exchanging data.

    This problem is most commonly caused when there is a problem with IP communications between the Web Front and Back-Ends. Before you attempt to resolve this problem you should clear your browser cache completely.

    Our support staff will be happy to assist you in resolving this issue. Please contact our Live Support or reply to any Tickets you may have received from our technicians for further assistance.

    Oksana

    (@oksana_gu21)

    @keithdriscoll

    Thanks for your link. Yes, we followed all the direction in the link. The problems is obviously in MySQL Server and the DB traffic which my Web Dev thinks is the DDOS attack as my site should not generating this huge traffic. I did have a live chat with Justhost help desk several times with no result. Anything else I can do right now to fix it? Thanks

Viewing 9 replies - 1 through 9 (of 9 total)
  • The topic ‘‘Data base connection error’ and massive DB connections’ is closed to new replies.