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;

相關內容