Hướng dẫn how do i stop a long running query in mysql? - làm cách nào để dừng truy vấn chạy dài trong mysql?

Tôi kết nối với

mysql -uusername -p  -hhostname
3 từ vỏ linux của tôi. Thỉnh thoảng tôi chạy một truy vấn
mysql -uusername -p  -hhostname
4 quá lớn. Nó in và in và tôi đã biết đây không phải là ý tôi. Tôi muốn dừng truy vấn.

Đánh

mysql -uusername -p  -hhostname
5 (một vài lần) giết chết hoàn toàn
mysql -uusername -p  -hhostname
3 và đưa tôi trở lại Shell, vì vậy tôi phải kết nối lại.

Có thể ngăn chặn một truy vấn mà không tự giết

mysql -uusername -p  -hhostname
3?

Hướng dẫn how do i stop a long running query in mysql? - làm cách nào để dừng truy vấn chạy dài trong mysql?

Hỏi ngày 24 tháng 9 năm 2010 lúc 13:38Sep 24, 2010 at 13:38

1

mysql> show processlist;
+----+------+-----------+-----+---------+------+---------------------+------------------------------+----------+
| Id | User | Host      | db  | Command | Time | State               | Info                         | Progress |
+----+------+-----------+-----+---------+------+---------------------+------------------------------+----------+
| 14 | usr1 | localhost | db1 | Query   |    0 | starting            | show processlist             |    0.000 |
| 16 | usr1 | localhost | db1 | Query   |   94 | Creating sort index | SELECT  `tbl1`.* FROM `tbl1` |    0.000 |
+----+------+-----------+-----+---------+------+---------------------+------------------------------+----------+
2 rows in set (0.000 sec)

mysql> kill 16;
Query OK, 0 rows affected (0.004 sec)

mysql> show processlist;
+----+------+-----------+-----+---------+------+----------+------------------+----------+
| Id | User | Host      | db  | Command | Time | State    | Info             | Progress |
+----+------+-----------+-----+---------+------+----------+------------------+----------+
| 14 | usr1 | localhost | db1 | Query   |    0 | starting | show processlist |    0.000 |
+----+------+-----------+-----+---------+------+----------+------------------+----------+
1 row in set (0.000 sec)

Hướng dẫn how do i stop a long running query in mysql? - làm cách nào để dừng truy vấn chạy dài trong mysql?

Đã trả lời ngày 24 tháng 9 năm 2010 lúc 13:39Sep 24, 2010 at 13:39

baklarz2048baklarz2048baklarz2048

10,5K2 Huy hiệu vàng 30 Huy hiệu bạc37 Huy hiệu đồng2 gold badges30 silver badges37 bronze badges

9

Chỉ để thêm

mysql -uusername -p  -hhostname
8 ID ID là ID kết nối từ
mysql -uusername -p  -hhostname
9

thích hợp hơn nếu bạn không muốn giết kết nối thường khi chạy từ một số ứng dụng.

Để biết thêm chi tiết, bạn có thể đọc tài liệu MySQL tại đây

Đã trả lời ngày 22 tháng 12 năm 2012 lúc 12:27Dec 22, 2012 at 12:27

Maazmaazmaaz

4.2612 Huy hiệu vàng29 Huy hiệu bạc48 Huy hiệu đồng2 gold badges29 silver badges48 bronze badges

1

Kết nối với MySQL

mysql -uusername -p  -hhostname

Hiển thị danh sách quy trình đầy đủ:

mysql> show full processlist;
+---------+--------+-------------------+---------+---------+------+-------+------------------+
| Id      | User   | Host              | db      | Command | Time | State | Info             |
+---------+--------+-------------------+---------+---------+------+-------+------------------+
| 9255451 | logreg | dmin001.ops:37651 | logdata | Query   |    0 | NULL  | show processlist |
+---------+--------+-------------------+---------+---------+------+-------+------------------+

Giết truy vấn cụ thể. Ở đây id = 9255451

mysql> kill 9255451;

Nếu bạn bị từ chối, hãy thử SQL này:

CALL mysql.rds_kill(9255451)

Đã trả lời ngày 13 tháng 6 năm 2014 lúc 14:25Jun 13, 2014 at 14:25

Hướng dẫn how do i stop a long running query in mysql? - làm cách nào để dừng truy vấn chạy dài trong mysql?

minhas23minhas23minhas23

9.0433 huy hiệu vàng57 Huy hiệu bạc40 Huy hiệu đồng3 gold badges57 silver badges40 bronze badges

1

Sử dụng

mysql> show full processlist;
+---------+--------+-------------------+---------+---------+------+-------+------------------+
| Id      | User   | Host              | db      | Command | Time | State | Info             |
+---------+--------+-------------------+---------+---------+------+-------+------------------+
| 9255451 | logreg | dmin001.ops:37651 | logdata | Query   |    0 | NULL  | show processlist |
+---------+--------+-------------------+---------+---------+------+-------+------------------+
0 để tiêu diệt truy vấn chạy trốn:

Chạy các lệnh sau:

mysqladmin -uusername -ppassword pr

Sau đó lưu ý xuống ID quy trình.

mysqladmin -uusername -ppassword kill pid

Truy vấn bỏ trốn không còn tiêu thụ tài nguyên.

Hướng dẫn how do i stop a long running query in mysql? - làm cách nào để dừng truy vấn chạy dài trong mysql?

Đã trả lời ngày 10 tháng 10 năm 2013 lúc 6:43Oct 10, 2013 at 6:43

Hướng dẫn how do i stop a long running query in mysql? - làm cách nào để dừng truy vấn chạy dài trong mysql?

minhas23minhas23minhas23

9.0433 huy hiệu vàng57 Huy hiệu bạc40 Huy hiệu đồng3 gold badges57 silver badges40 bronze badges

Sử dụng

mysql> show full processlist;
+---------+--------+-------------------+---------+---------+------+-------+------------------+
| Id      | User   | Host              | db      | Command | Time | State | Info             |
+---------+--------+-------------------+---------+---------+------+-------+------------------+
| 9255451 | logreg | dmin001.ops:37651 | logdata | Query   |    0 | NULL  | show processlist |
+---------+--------+-------------------+---------+---------+------+-------+------------------+
0 để tiêu diệt truy vấn chạy trốn:

> mysqladmin -uUSERNAME -pPASSWORD pr

+-----+------+-----------------+--------+---------+------+--------------+------------------+
| Id  | User | Host            | db     | Command | Time | State        | Info             |
+-----+------+-----------------+--------+---------+------+--------------+------------------+
| 137 | beet | localhost:53535 | people | Query   | 292  | Sending data | DELETE FROM      |
| 145 | root | localhost:55745 |        | Query   | 0    |              | show processlist |
+-----+------+-----------------+--------+---------+------+--------------+------------------+

Chạy các lệnh sau:

> mysqladmin -uUSERNAME -pPASSWORD kill 137

Sau đó lưu ý xuống ID quy trình.May 23, 2013 at 15:29

Truy vấn bỏ trốn không còn tiêu thụ tài nguyên.Rudy Lattae

Đã trả lời ngày 10 tháng 10 năm 2013 lúc 6:431 gold badge11 silver badges13 bronze badges

Nếu bạn có sẵn

mysql> show full processlist;
+---------+--------+-------------------+---------+---------+------+-------+------------------+
| Id      | User   | Host              | db      | Command | Time | State | Info             |
+---------+--------+-------------------+---------+---------+------+-------+------------------+
| 9255451 | logreg | dmin001.ops:37651 | logdata | Query   |    0 | NULL  | show processlist |
+---------+--------+-------------------+---------+---------+------+-------+------------------+
0, bạn có thể nhận được danh sách các truy vấn với:

> show processlist;

Sau đó, bạn có thể dừng quy trình MySQL đang lưu trữ truy vấn dài:

Đã trả lời ngày 23 tháng 5 năm 2013 lúc 15:29

Rudy Lattaerudy Lattae

8511 Huy hiệu vàng11 Huy hiệu bạc13 Huy hiệu đồng

Bạn cần phải chạy lệnh sau để tiêu diệt quá trình. Tìm hiểu ID của quá trình mà bạn muốn giết

Lấy giá trị từ cột ID và lệnh FIRE bên dưới

mysql -uusername -p  -hhostname
0Jan 4, 2019 at 9:17

Tham số truy vấn Chỉ định rằng chúng ta cần tiêu diệt quy trình lệnh truy vấn.before any output is printed. For example:

mysql -uusername -p  -hhostname
1

Cú pháp cho quá trình tiêu diệt như sau

mysql -uusername -p  -hhostname
2

Giết [Kết nối | Truy vấn] ProcessList_id

Vui lòng tham khảo liên kết này để biết thêm thông tin.Dec 15, 2014 at 17:48