国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > MySQL > 正文

批量 kill mysql 中運行時間長的sql

2024-07-24 12:45:06
字體:
來源:轉載
供稿:網友

 KILL語法

KILL [CONNECTION | QUERY] thread_id
每個與mysqld的連接都在一個獨立的線程里運行,您可以使用SHOW PROCESSLIST語句查看哪些線程正在運行,并使用KILL thread_id語句終止一個線程。

KILL允許自選的CONNECTION或QUERY修改符:

· KILL CONNECTION與不含修改符的KILL一樣:它會終止與給定的thread_id有關的連接。
· KILL QUERY會終止連接當前正在執行的語句,但是會保持連接的原狀。

如果您擁有PROCESS權限,則您可以查看所有線程。如果您擁有SUPER權限,您可以終止所有線程和語句。否則,您只能查看和終止您自己的線程和語句。

您也可以使用mysqladmin processlist和mysqladmin kill命令來檢查和終止線程。

注釋:您不能同時使用KILL和Embedded MySQL Server庫,因為內植的服務器只運行主機應用程序的線程。它不能創建任何自身的連接線程。

當您進行一個KILL時,對線程設置一個特有的終止標記。在多數情況下,線程終止可能要花一些時間,這是因為終止標記只會在在特定的間隔被檢查:

· 在SELECT, ORDER BY和GROUP BY循環中,在讀取一組行后檢查標記。如果設置了終止標記,則該語句被放棄。
· 在ALTER TABLE過程中,在每組行從原來的表中被讀取前,檢查終止標記。如果設置了終止標記,則語句被放棄,臨時表被刪除。
· 在UPDATE或DELETE運行期間,在每個組讀取之后以及每個已更行或已刪除的行之后,檢查終止標記。如果終止標記被設置,則該語句被放棄。注意,如果您正在使用事務,則變更不會被 回滾。
· GET_LOCK()會放棄和返回NULL。
· INSERT DELAYED線程會快速地刷新(插入)它在存儲器中的所有的行,然后終止。
· 如果線程在表鎖定管理程序中(狀態:鎖定),則表鎖定被快速地放棄。
· 如果在寫入調用中,線程正在等待空閑的磁盤空間,則寫入被放棄,并伴隨”disk full”錯誤消息。

· 警告:對MyISAM表終止一個REPAIR TABLE或OPTIMIZE TABLE操作會導致出現一個被損壞的沒有用的表。對這樣的表的任何讀取或寫入都會失敗,直到您再次優化或修復它(不中斷)。


1、通過information_schema.processlist表中的連接信息生成需要處理掉的MySQL連接的語句臨時文件,然后執行臨時文件中生成的指令

mysql> select concat('KILL ',id,';') from information_schema.processlist where user='root';+------------------------+| concat('KILL ',id,';') +------------------------+| KILL 3101; | KILL 2946; +------------------------+2 rows in set (0.00 sec) mysql>select concat('KILL ',id,';') from information_schema.processlist where user='root' into outfile '/tmp/a.txt';Query OK, 2 rows affected (0.00 sec) mysql>source /tmp/a.txt;Query OK, 0 rows affected (0.00 sec)
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 房产| 梁平县| 临泽县| 日喀则市| 凌海市| 子长县| 旌德县| 杂多县| 齐河县| 南郑县| 庄浪县| 仁布县| 庆阳市| 成都市| 金阳县| 漳州市| 全州县| 密云县| 县级市| 喀喇| 莎车县| 炎陵县| 陕西省| 聂拉木县| 沂南县| 江北区| 册亨县| 涞源县| 石河子市| 志丹县| 江川县| 巴中市| 昌宁县| 枣庄市| 乌兰浩特市| 东明县| 兴安县| 惠州市| 灯塔市| 孝义市| 黎城县|