Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

Хостер ограничил доступ к БД из-за длительного выполнения запросов к базе данных MySQL


Recommended Posts

Сегодня утром получил письмо от хостера:

 

Здравствуйте!

Уважаемый клиент!

Уведомляем, что на Вашем аккаунте с логином <mysite> зафиксировано длительное выполнение запросов к базе данных MySQL с именем <mysite>. Запросы к БД MySQL выполнялись более 10 секунд и использовали более 50% мощности процессора. По этой причине доступ к Вашей БД был временно приостановлен.

Указанная мера была принята по той причине, что описанная ситуация является нарушением пункта 2.11 приложения №1 к публичной оферте:

===

Не допускается возникновение нагрузок на процессоры серверов, задействованных при оказании услуг (за исключением тарифных планов «VDS»), любыми процессами пользователей, создающими нагрузку на любой процессор, если нагрузка превышает следующие лимиты:
...
 - длится более 10 секунд и задействует более 50% мощности процессора.
...
К процессам пользователя относятся процессы, запущенные и/или работающие с полномочиями (UID,EUID) того unix-пользователя, который ассоциирован с аккаунтом (определяется при создании аккаунта), а также те процессы/потоки(threads), которые являются системными и запущены от имени системных пользователей, в то время, когда они занимаются обработкой данных, которая была инициирована иными процессами пользователя (MySQL-потоки, запускаемые под системным пользователем mysql, процессы и/или потоки веб-сервера Apache, запускаемые под системным пользователем nobody и прочее).

===

Также о недопустимости превышения установленных лимитов указывается в п. 2.1 данного документа:

===

Не допускается превышение лимитов услуг (ресурсов), предоставляемых Исполнителем в соответствии с используемым Заказчиком тарифным планом.

===

С нашей стороны доступ был приостановлен не ко всем ресурсам на Вашем аккаунте, а только к указанной БД, чтобы у Вас присутствовала возможность оперативного принятия мер для исправления ситуации. Вам или Вашим техническим специалистам потребуется проанализировать имеющуюся информацию о фактах превышения лимита, затем принять меры для недопущения повторения возникшей ситуации в дальнейшем.

По факту принятия мер, пожалуйста, обязательно сообщите об этом в ответ на данное письмо с указанием, какие конкретно меры с Вашей стороны были приняты. В случае, если принятых мер будет достаточно, доступ к БД будет возобновлен.

При возникновении дополнительных вопросов просьба также задавать их в ответ на данное письмо.

Информация о превышении:

 

Здравствуйте!

Уважаемый клиент!

Уведомляем, что на Вашем аккаунте с логином <mysite> зафиксировано длительное выполнение запросов к базе данных MySQL с именем <mysite>. Запросы к БД MySQL выполнялись более 10 секунд и использовали более 50% мощности процессора. По этой причине доступ к Вашей БД был временно приостановлен.


Указанная мера была принята по той причине, что описанная ситуация является нарушением пункта 2.11 приложения №1 к публичной оферте:

===

Не допускается возникновение нагрузок на процессоры серверов, задействованных при оказании услуг (за исключением тарифных планов «VDS»), любыми процессами пользователей, создающими нагрузку на любой процессор, если нагрузка превышает следующие лимиты:
...
 - длится более 10 секунд и задействует более 50% мощности процессора.
...
К процессам пользователя относятся процессы, запущенные и/или работающие с полномочиями (UID,EUID) того unix-пользователя, который ассоциирован с аккаунтом (определяется при создании аккаунта), а также те процессы/потоки(threads), которые являются системными и запущены от имени системных пользователей, в то время, когда они занимаются обработкой данных, которая была инициирована иными процессами пользователя (MySQL-потоки, запускаемые под системным пользователем mysql, процессы и/или потоки веб-сервера Apache, запускаемые под системным пользователем nobody и прочее).

===

Также о недопустимости превышения установленных лимитов указывается в п. 2.1 данного документа:

===

Не допускается превышение лимитов услуг (ресурсов), предоставляемых Исполнителем в соответствии с используемым Заказчиком тарифным планом.

===

С нашей стороны доступ был приостановлен не ко всем ресурсам на Вашем аккаунте, а только к указанной БД, чтобы у Вас присутствовала возможность оперативного принятия мер для исправления ситуации. Вам или Вашим техническим специалистам потребуется проанализировать имеющуюся информацию о фактах превышения лимита, затем принять меры для недопущения повторения возникшей ситуации в дальнейшем.

По факту принятия мер, пожалуйста, обязательно сообщите об этом в ответ на данное письмо с указанием, какие конкретно меры с Вашей стороны были приняты. В случае, если принятых мер будет достаточно, доступ к БД будет возобновлен.

При возникновении дополнительных вопросов просьба также задавать их в ответ на данное письмо.

Информация о превышении:

> | 3374747 | mysite    | localhost | mysite    | Query          | 0    |
> Sending data       | SELECT COUNT(DISTINCT p.product_id) AS total FROM

> mb_category_path cp LEFT JOIN mb_product_to_catego |
> | 3374814 | mysite    | localhost | mysite    | Sleep          | 339  |
>                 |
>                                     |
> | 3375131 | mysite    | localhost | mysite    | Query          | 2    |
> Sending data       | SELECT COUNT(DISTINCT p.product_id) AS total FROM
> mb_category_path cp LEFT JOIN mb_product_to_catego |
> | 3375143 | mysite    | localhost | mysite    | Query          | 2    |
> Sending data       | SELECT COUNT(DISTINCT p.product_id) AS total FROM
> mb_category_path cp LEFT JOIN mb_product_to_catego |
> | 3375168 | mysite    | localhost | mysite    | Query          | 3    |
> Sending data       | SELECT COUNT(DISTINCT p.product_id) AS total FROM
> mb_category_path cp LEFT JOIN mb_product_to_catego |
> | 3375177 | mysite    | localhost | mysite    | Query          | 3    |
> Sending data       | SELECT COUNT(DISTINCT p.product_id) AS total FROM
> mb_category_path cp LEFT JOIN mb_product_to_catego |
> | 3375205 | mysite    | localhost | mysite    | Query          | 3    |
> Sending data       | SELECT COUNT(DISTINCT p.product_id) AS total FROM
> mb_category_path cp LEFT JOIN mb_product_to_catego |
> | 3375216 | mysite    | localhost | mysite    | Query          | 3    |
> Sending data       | SELECT COUNT(DISTINCT p.product_id) AS total FROM
> mb_category_path cp LEFT JOIN mb_product_to_catego |
> | 3375221 | mysite    | localhost | mysite    | Query          | 2    |
> Sending data       | SELECT COUNT(DISTINCT p.product_id) AS total FROM
> mb_category_path cp LEFT JOIN mb_product_to_catego |
> | 3375228 | mysite    | localhost | mysite    | Query          | 2    |
> Sending data       | SELECT COUNT(DISTINCT p.product_id) AS total FROM
> mb_category_path cp LEFT JOIN mb_product_to_catego |
> | 3375233 | mysite    | localhost | mysite    | Query          | 4    |
> Sending data       | SELECT COUNT(DISTINCT p.product_id) AS total FROM
> mb_category_path cp LEFT JOIN mb_product_to_catego |
> | 3375239 | mysite    | localhost | mysite    | Sleep          | 166  |
>                 |
>                                     |
> | 3375240 | mysite    | localhost | mysite    | Query          | 2    |
> Sending data       | SELECT COUNT(DISTINCT p.product_id) AS total FROM
> mb_category_path cp LEFT JOIN mb_product_to_catego |
> | 3375243 | mysite    | localhost | mysite    | Query          | 3    |
> Sending data       | SELECT COUNT(DISTINCT p.product_id) AS total FROM
> mb_category_path cp LEFT JOIN mb_product_to_catego |
> | 3375254 | mysite    | localhost | mysite    | Query          | 3    |
> Sending data       | SELECT COUNT(DISTINCT p.product_id) AS total FROM
> mb_category_path cp LEFT JOIN mb_product_to_catego |
> | 3375257 | mysite    | localhost | mysite    | Query          | 2    |
> Sending data       | SELECT COUNT(DISTINCT p.product_id) AS total FROM
> mb_category_path cp LEFT JOIN mb_product_to_catego |
> | 3375261 | mysite    | localhost | mysite    | Query          | 2    |
> Sending data       | SELECT COUNT(DISTINCT p.product_id) AS total FROM
> mb_category_path cp LEFT JOIN mb_product_to_catego |
> | 3375264 | mysite    | localhost | mysite    | Query          | 3    |
> Sending data       | SELECT COUNT(DISTINCT p.product_id) AS total FROM
> mb_category_path cp LEFT JOIN mb_product_to_catego |
> | 3375274 | mysite    | localhost | mysite    | Query          | 2    |
> Sending data       | SELECT COUNT(DISTINCT p.product_id) AS total FROM
> mb_category_path cp LEFT JOIN mb_product_to_catego |
> | 3375278 | mysite    | localhost | mysite    | Query          | 3    |
> Sending data       | SELECT COUNT(DISTINCT p.product_id) AS total FROM
> mb_category_path cp LEFT JOIN mb_product_to_catego |
> | 3375285 | mysite    | localhost | mysite    | Query          | 1    |
> Sending data       | SELECT COUNT(DISTINCT p.product_id) AS total FROM
> mb_category_path cp LEFT JOIN mb_product_to_catego |
> | 3375290 | mysite    | localhost | mysite    | Sleep          | 136  |
>                 |
>                                     |
> | 3375291 | mysite    | localhost | mysite    | Query          | 4    |
> Sending data       | SELECT COUNT(DISTINCT p.product_id) AS total FROM
> mb_category_path cp LEFT JOIN mb_product_to_catego |
> | 3375303 | mysite    | localhost | mysite    | Query          | 4    |
> Sending data       | SELECT COUNT(DISTINCT p.product_id) AS total FROM
> mb_category_path cp LEFT JOIN mb_product_to_catego |
> | 3375322 | mysite    | localhost | mysite    | Query          | 0    |
> Sending data       | SELECT COUNT(DISTINCT p.product_id) AS total FROM
> mb_category_path cp LEFT JOIN mb_product_to_catego |
> | 3375331 | mysite    | localhost | mysite    | Query          | 4    |
> Sending data       | SELECT COUNT(DISTINCT p.product_id) AS total FROM
> mb_category_path cp LEFT JOIN mb_product_to_catego |
> | 3375337 | mysite    | localhost | mysite    | Query          | 4    |
> Sending data       | SELECT COUNT(DISTINCT p.product_id) AS total FROM
> mb_category_path cp LEFT JOIN mb_product_to_catego |
> | 3375436 | mysite    | localhost | mysite    | Query          | 4    |
> Sending data       | SELECT COUNT(DISTINCT p.product_id) AS total FROM
> mb_category_path cp LEFT JOIN mb_product_to_catego |
> | 3375442 | mysite    | localhost | mysite    | Query          | 0    |
> Sending data       | SELECT COUNT(DISTINCT p.product_id) AS total FROM
> mb_category_path cp LEFT JOIN mb_product_to_catego |
> | 3375451 | mysite    | localhost | mysite    | Query          | 2    |
> Sending data       | SELECT COUNT(DISTINCT p.product_id) AS total FROM
> mb_category_path cp LEFT JOIN mb_product_to_catego |
> | 3375455 | mysite    | localhost | mysite    | Query          | 0    |
> Sending data       | SELECT COUNT(DISTINCT p.product_id) AS total FROM
> mb_product_to_category p2c LEFT JOIN mb_product p  |
> | 3375463 | mysite    | localhost | mysite    | Sleep          | 106  |
>                 |
>                                     |
> | 3375464 | mysite    | localhost | mysite    | Query          | 0    |
> Sending data       | SELECT COUNT(DISTINCT p.product_id) AS total FROM
> mb_category_path cp LEFT JOIN mb_product_to_catego |
> | 3375468 | mysite    | localhost | mysite    | Query          | 0    |
> Sending data       | SELECT COUNT(DISTINCT p.product_id) AS total FROM
> mb_category_path cp LEFT JOIN mb_product_to_catego |
> | 3375480 | mysite    | localhost | mysite    | Query          | 2    |
> Sending data       | SELECT COUNT(DISTINCT p.product_id) AS total FROM
> mb_category_path cp LEFT JOIN mb_product_to_catego |
> | 3375483 | mysite    | localhost | mysite    | Query          | 2    |
> Sending data       | SELECT COUNT(DISTINCT p.product_id) AS total FROM
> mb_category_path cp LEFT JOIN mb_product_to_catego |
> | 3375494 | mysite    | localhost | mysite    | Query          | 5    |
> Sending data       | SELECT COUNT(DISTINCT p.product_id) AS total FROM
> mb_category_path cp LEFT JOIN mb_product_to_catego |
> | 3375497 | mysite    | localhost | mysite    | Query          | 4    |
> Sending data       | SELECT COUNT(DISTINCT p.product_id) AS total FROM
> mb_category_path cp LEFT JOIN mb_product_to_catego |
> | 3375502 | mysite    | localhost | mysite    | Query          | 4    |
> Sending data       | SELECT COUNT(DISTINCT p.product_id) AS total FROM
> mb_category_path cp LEFT JOIN mb_product_to_catego |
> | 3375512 | mysite    | localhost | mysite    | Query          | 3    |
> Sending data       | SELECT COUNT(DISTINCT p.product_id) AS total FROM
> mb_category_path cp LEFT JOIN mb_product_to_catego |
> | 3375521 | mysite    | localhost | mysite    | Query          | 2    |
> Sending data       | SELECT COUNT(DISTINCT p.product_id) AS total FROM
> mb_category_path cp LEFT JOIN mb_product_to_catego |
> | 3375531 | mysite    | localhost | mysite    | Query          | 2    |
> Sending data       | SELECT COUNT(DISTINCT p.product_id) AS total FROM
> mb_category_path cp LEFT JOIN mb_product_to_catego |
> | 3375547 | mysite    | localhost | mysite    | Query          | 2    |
> Sending data       | SELECT COUNT(DISTINCT p.product_id) AS total FROM
> mb_category_path cp LEFT JOIN mb_product_to_catego |
> | 3375552 | mysite    | localhost | mysite    | Query          | 3    |
> Sending data       | SELECT COUNT(DISTINCT p.product_id) AS total FROM
> mb_category_path cp LEFT JOIN mb_product_to_catego |
> | 3375561 | mysite    | localhost | mysite    | Query          | 2    |
> Sending data       | SELECT COUNT(DISTINCT p.product_id) AS total FROM
> mb_category_path cp LEFT JOIN mb_product_to_catego |
> | 3375565 | mysite    | localhost | mysite    | Query          | 2    |
> Sending data       | SELECT COUNT(DISTINCT p.product_id) AS total FROM
> mb_category_path cp LEFT JOIN mb_product_to_catego |
> | 3375580 | mysite    | localhost | mysite    | Query          | 2    |
> Sending data       | SELECT COUNT(DISTINCT p.product_id) AS total FROM
> mb_category_path cp LEFT JOIN mb_product_to_catego |
> | 3375581 | mysite    | localhost | mysite    | Query          | 2    |
> Sending data       | SELECT COUNT(DISTINCT p.product_id) AS total FROM
> mb_category_path cp LEFT JOIN mb_product_to_catego |
> | 3375582 | mysite    | localhost | mysite    | Sleep          | 50   |
>                 |
>                                     |
> | 3375600 | mysite    | localhost | mysite    | Query          | 3    |
> Sending data       | SELECT COUNT(DISTINCT p.product_id) AS total FROM
> mb_category_path cp LEFT JOIN mb_product_to_catego |
> | 3375609 | mysite    | localhost | mysite    | Query          | 2    |
> Sending data       | SELECT COUNT(DISTINCT p.product_id) AS total FROM
> mb_category_path cp LEFT JOIN mb_product_to_catego |
> | 3375619 | mysite    | localhost | mysite    | Query          | 3    |
> Sending data       | SELECT COUNT(DISTINCT p.product_id) AS total FROM
> mb_category_path cp LEFT JOIN mb_product_to_catego |
> | 3375621 | mysite    | localhost | mysite    | Query          | 2    |
> Sending data       | SELECT COUNT(DISTINCT p.product_id) AS total FROM
> mb_category_path cp LEFT JOIN mb_product_to_catego |
> | 3375632 | mysite    | localhost | mysite    | Query          | 3    |
> Sending data       | SELECT COUNT(DISTINCT p.product_id) AS total FROM
> mb_category_path cp LEFT JOIN mb_product_to_catego |
> | 3375636 | mysite    | localhost | mysite    | Sleep          | 20   |
>                 |
>                                     |
> | 3375637 | mysite    | localhost | mysite    | Query          | 3    |
> Sending data       | SELECT COUNT(DISTINCT p.product_id) AS total FROM
> mb_category_path cp LEFT JOIN mb_product_to_catego |
> | 3375655 | mysite    | localhost | mysite    | Query          | 5    |
> Sending data       | SELECT COUNT(DISTINCT p.product_id) AS total FROM
> mb_category_path cp LEFT JOIN mb_product_to_catego |
> | 3375662 | mysite    | localhost | mysite    | Query          | 3    |
> Sending data       | SELECT COUNT(DISTINCT p.product_id) AS total FROM
> mb_category_path cp LEFT JOIN mb_product_to_catego |
> | 3375677 | mysite    | localhost | mysite    | Query          | 1    |
> Sending data       | SELECT COUNT(DISTINCT p.product_id) AS total FROM
> mb_product_to_category p2c LEFT JOIN mb_product p  |
> | 3375683 | mysite    | localhost | mysite    | Query          | 2    |
> executing          | SELECT p.product_id, (SELECT AVG(rating) AS total FROM
> mb_review r1 WHERE r1.product_id = p.product_ |

 

 

После разговора со службой поддержки мне посоветовали сменить пароль от БД, и оптимизировать её работу. Честно говоря просто в тупике. Сайт висит на хостинге уже несколько месяцев и никогда подобных проблем не возникало. Никаких манипуляций с сайтом последнее время мной так же не производилось. Собственно главный вопрос, что могло стать причиной данной проблемы и как можно её решить? Сайт на данный момент просто не работает. Заранее спасибо за любую помощь.

Надіслати
Поділитися на інших сайтах


Зайди вот сюда:

https://github.com/atomixdesign/opencart-turbo

 

там файл: tupbo.php

у меня была аналогичная проблема. а нужно было просто поставить индексы.

Этот скрипт проставит индексы в твоей базе и выдаст отчет где поставил.

 

До кучи этот скрипт предлагает конвертировать MySQL DB Storage Engine в MyISAM to InnoDB, но я не знаю что это такое и нажимать туда не стал.

Может знающие люди объяснят что это и чем это едят.

 

P.S.

еще можете почитать вот эту тему

http://forum.opencart.com/viewtopic.php?p=505802

Змінено користувачем diskbox
Надіслати
Поділитися на інших сайтах


  • 2 weeks later...

CorbanDallas, удалось решить проблему? Если не секрет, то как? А то сегодня аналогичное извещение получил.

Я эту проблему решил скриптом, ссылку на который дал чуть выше. Больше хостер не возмущается :)

Надіслати
Поділитися на інших сайтах


Да я скрипт тоже поставил, но мне ошибку выдает 

 

Error: Unable to retrieve DB Table List

 

Я так понимаю из-за хостера - доступа то к БД нет. Т.е. сначала нужно просить хостера возобновить доступ, а потом скрипт в работу запускать?

Надіслати
Поділитися на інших сайтах


Скорее всего так и есть. Хостер закрыл вам доступ к MySQL.

Тогда скрипт не поможет. Если есть backup базы - на локальном компе оптимизируйте ее (в Денвере например) и потом скажите хостеру что все поправили.

 

P.S.

Хостер не 1gb.ru случайно?

Надіслати
Поділитися на інших сайтах


Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз
  • Зараз на сторінці   0 користувачів

    • Ні користувачів, які переглядиють цю сторінку

×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.