MySQL是一種流行的關(guān)系型數(shù)據(jù)庫管理系統(tǒng)。當你需要查看當前正在執(zhí)行的SQL語句時,你可以通過以下的方法來實現(xiàn)。
前提條件:你需要有足夠的權(quán)限才能夠執(zhí)行下面的命令。
步驟:
SHOW FULL PROCESSLIST;
該命令將顯示所有正在執(zhí)行的SQL語句及其相關(guān)的信息,如下的數(shù)據(jù):
+-----+----------------------+-----------+---------+---------+------+------------------------+----------------------+ | Id | User | Host | db | Command | Time | State | Info | +-----+----------------------+-----------+---------+---------+------+------------------------+----------------------+ | 294 | root | localhost | NULL | Query | 97 | executing | SELECT * FROM user | | 295 | root | localhost | mydb | Sleep | 120 | | NULL | +-----+----------------------+-----------+---------+---------+------+------------------------+----------------------+
其中:
- Id:進程 ID。
- User:執(zhí)行該語句的用戶。
- Host:調(diào)用該命令的主機名。
- db:與該語句關(guān)聯(lián)的數(shù)據(jù)庫。
- Command:執(zhí)行該語句的命令類型。
- Time:該語句運行的時間(以秒為單位)。
- State:該語句當前的狀態(tài)。
- Info:該語句的詳細信息。
這就是如何在MySQL中查看當前執(zhí)行的SQL語句。這很有用,因為如果有進程長時間運行,你可以用此方法確定造成問題的SQL語句。