Помощь с описанием / значением списка процессов MySQL - PullRequest
0 голосов
/ 21 января 2011

Может кто-нибудь сказать мне, что означает или говорит информация ниже?Я не очень знаком с MySQL.Эта информация поступает от моего хостинг-провайдера.Меня особенно интересует, что команда или время комментируют или говорят им.

Изучая текущий список процессов mysql, мы заметили следующие темы, связанные с вашей учетной записью:

| Id | User  | Host | db | Command | Time | State | Info |

| 4655267 | xyz | localhost | xyz | Sleep   | 111  |     
| 4655961 | xyz | localhost | xyz | Sleep   | 8    |   
| 4654241 | xyz | localhost | xyz | Sleep   | 126  |     
| 4655961 | xyz | localhost | xyz | Sleep   | 38   |     

Вот более подробная информация о ситуации:

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

Они предоставили мне некоторую информацию после перетаскивания ее из них, но мои вопросы:

  1. это чрезмерное использование ресурсов?
  2. почему через 2 года это станет проблемой внезапно?
  3. даже после того, как страница была отключена в течение последних 2,5 дней, использование ресурсов в MySQL либо оставалось прежним, либо увеличивалось, так действительно ли проблема связана с моей страницей или чем-то еще?
  4. что мне говорит список процессов?
  5. что я могу сделать, чтобы решить эту проблему?

Вот некоторая информация, которую они предоставили:

CPU: 0.06 % 
Memory: 0.17 % 
Mysql: 1.2 % 

Top Process   %CPU 3.0   /usr/php4/bin/php / specific file name 
Top Process   %CPU 1.5   /usr/php4/bin/php / specific file name 

Проблема с вашей учетной записью в том, что MySQL часто используется.Среднее использование другой учетной записи составляет 0,2% от MySQL, тогда как ваша учетная запись потребляет более 1%.

Просматривая текущий список процессов mysql, мы заметили следующие темы, связанные с вашей учетной записью:

+ Id | User  | Host | db | Command | Time | State | Info |

| 4655267 | xyz | localhost | xyz | Sleep   | 111  |     
| 4655961 | xyz | localhost | xyz | Sleep   | 8    |   
| 4654241 | xyz | localhost | xyz | Sleep   | 126  |     
| 4655961 | xyz | localhost | xyz | Sleep   | 38   |

Убедитесь, что в вашей учетной записи не более 2-3 одновременных подключений mysql.в одно время, и вы продолжаете оптимизировать ваши строки подключения для пула подключений;также убедитесь, что все соединения должным образом разорваны после их использования, и никакие соединения не остаются как «открытые».

Я проверил использование ресурсов за последние семь дней, и это то, что он говорит для MySQL.Странно, что использование возросло или осталось таким же, так как страница больше не активна и не была в течение последних 2,5 дней.

1/21/11 : Number of MySQL procs (average) - 1.19 
1/20/11 : Number of MySQL procs (average) - 1.24 
1/19/11 : Number of MySQL procs (average) - 1.20 
1/18/11 : Number of MySQL procs (average) - 1.18 
1/17/11 : Number of MySQL procs (average) - 1.13 
1/16/11 : Number of MySQL procs (average) - 1.08 
1/15/11 : Number of MySQL procs (average) - 1.09

Ответы [ 2 ]

2 голосов
/ 22 января 2011

Хорошо, чтобы ответить на ваши вопросы:

  1. Будет ли это «чрезмерным» использованием ресурсов, я думаю, будет зависеть от вашего соглашения с хостинговой компанией.Я бы пересмотрел это.Но, честно говоря, если бы мой хост посчитал чрезмерным использование процессора на 1%, я бы нашел другой хост.То же самое с 4 спальными подключениями.Конечно, я больше привык к выделенному хостингу (где я бы сказал, что чрезмерная загрузка ЦП для MySQL на машинах, которые я использую, составляет более 200%, а чрезмерное количество незанятых соединений будет больше, чем несколько сотен).Но даже в этом случае вы используете менее 1% от одной дешевой машины.Учтите, что максимальное использование ЦП на машине i7 за 1 тыс. Долл. Составляет 400 или 800% (в зависимости от гиперпоточности).

  2. Почему это внезапно изменилось, единственное, что приходит на умэто проверить правильность индексов.Может быть, ваши данные медленно растут?Также возможно, что он не изменился внезапно, но ваша хостинговая компания только что заметила: «Эй, этот сервер перегружен, давайте посмотрим на него».

  3. Ну, очевидно, если выключитьстраница не меняла загрузку, тогда она не вызывала загрузку.Но я уверен, что вы уже знали это.

  4. В списке процессов указано, что у вас есть 4 спящих (неактивных) соединения, и как долго они простаивают.

  5. Чтобы уменьшить количество незанятых соединений, измените конфигурацию PHP / Apache.Я считаю, что mysql_pconnect содержит одно соединение на процесс Apache.В качестве альтернативы, переключитесь на mysql_connect.

Единственные реальные ответы на вопросы программирования - проверить ваши индексы, сделать EXPLAIN для ваших запросов и т. Д., Обычные вещи оптимизации MySQL.Подозреваю, что реальный ответ - найти хост, который не будет жаловаться, когда вы используете 20 ¢ / мес вычислительной мощности.

0 голосов
/ 21 января 2011

вы можете получить более подробную информацию mysql processlist

также если вы используете клиент mysql или произнесите phpmyadmin , вы можете увидеть процессы, чтобы определить время запросаи посмотрите, какие запросы выполняются долго.

...