MySQL запрос SELECT зависает

MySQL запрос SELECT зависает

На моем сервере есть 6 баз данных MySQL. Все они поддерживают сайты Wordpress. По какой-то причине 2 из этих баз данных недоступны. Насколько мне известно, они используют INNODB, но я не могу подтвердить, что они вообще делают:

mysql> use INFORMATION_SCHEMA;
mysql> SELECT * FROM TABLES;

зависает у меня. Рабочие базы данных кажутся нормальными (по крайней мере, веб-сайты в сети). Когда я пытаюсь получить доступ к плохим веб-сайтам баз данных, они просто продолжают вращаться.

Если я сделаю:

mysql> use rbb;
mysql> SELECT * FROM wp_posts;

Он просто зависнет.

Мой сервер работает под управлением CentOS 6.2, и до сих пор у меня не возникало никаких проблем.

Буду очень признателен за любые указания. Я понятия не имею, что делать дальше.

Даже открытие Sequel Pro на сервере приводит к зависанию приложения.

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

+----+------+-----------+-----+---------+------+----------------+------------------------+
| Id | User | Host      | db  | Command | Time | State          | Info                   |
+----+------+-----------+-----+---------+------+----------------+------------------------+
| 10 | root | localhost | rbb | Query   | 45   | Opening tables | SELECT * FROM wp_users |

решение1

В соответствии сдокументация mysql, состояние «открытие таблиц» не должно быть видно, если только не мешают блокировки или если ваш table_open_cacheразмер слишком мал.

Проверьте журнал ошибок MySQL, чтобы выяснить, что произошло, проверьте show engine innodb statusвывод информации innodb.

решение2

Может быть, мьютекс/блокировка вышли из-под контроля?

Вероятно, перезагрузка исправит. В противном случае вы можете проверить, есть ли какие-либо блокировки, и снять их вручную.

Попробуйте сSHOW FULL PROCESSLIST;

Связанный контент