MySQL的innoDB锁机制以及死锁处理(4)

| trx_requested_lock_id      | varchar(81)        | YES  |    | NULL                |      |#innodb_locks.lock_id

| trx_wait_started          | datetime            | YES  |    | NULL                |      |#事务开始等待的时间

| trx_weight                | bigint(21) unsigned | NO  |    | 0                  |      |#

| trx_mysql_thread_id        | bigint(21) unsigned | NO  |    | 0                  |      |#事务线程ID

| trx_query                  | varchar(1024)      | YES  |    | NULL                |      |#具体SQL语句

| trx_operation_state        | varchar(64)        | YES  |    | NULL                |      |#事务当前操作状态

| trx_tables_in_use          | bigint(21) unsigned | NO  |    | 0                  |      |#事务中有多少个表被使用

| trx_tables_locked          | bigint(21) unsigned | NO  |    | 0                  |      |#事务拥有多少个锁

| trx_lock_structs          | bigint(21) unsigned | NO  |    | 0                  |      |#

| trx_lock_memory_bytes      | bigint(21) unsigned | NO  |    | 0                  |      |#事务锁住的内存大小(B)

| trx_rows_locked            | bigint(21) unsigned | NO  |    | 0                  |      |#事务锁住的行数

| trx_rows_modified          | bigint(21) unsigned | NO  |    | 0                  |      |#事务更改的行数

| trx_concurrency_tickets    | bigint(21) unsigned | NO  |    | 0                  |      |#事务并发票数

| trx_isolation_level        | varchar(16)        | NO  |    |                    |      |#事务隔离级别

| trx_unique_checks          | int(1)              | NO  |    | 0                  |      |#是否唯一性检查

| trx_foreign_key_checks    | int(1)              | NO  |    | 0                  |      |#是否外键检查

| trx_last_foreign_key_error | varchar(256)        | YES  |    | NULL                |      |#最后的外键错误

| trx_adaptive_hash_latched  | int(1)              | NO  |    | 0                  |      |#

| trx_adaptive_hash_timeout  | bigint(21) unsigned | NO  |    | 0                  |      |#

+—————————-+———————+——+—–+———————+——-+

22 rows in set (0.01 sec)

mysql> show processlist; ##可以看出来,

或者

mysql> show engine innodb status\G ##也可以要看出相关死锁的问题

或者:

mysql> select ID,STATE from information_schema.processlist where user='system user';

mysql> select concat('KILL ',id,';') from information_schema.processlist where user='system user';

+------------------------+

| concat('KILL ',id,';') |

+------------------------+

| KILL 3101;            |

| KILL 2946;            |

+------------------------+

2 rows in set (0.00 sec)

批量kill多个进程。

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)

五:关于死锁:

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/2ebc27f633bb4a9889eac9ae72f10830.html