庆云php

庆云php

MySQL遇死时,kill结束TRX_MYSQL_THREAD_ID:MySQL线程ID,完成解锁

PHP 0

2023年11月20日 每日一猜答案: 答案:ABC
每日一猜答案分析:

SELECT * FROM INFORMATION_SCHEMA.INNODB_LOCKS; show ENGINE INNODB STATUS; SELECT * FROM information_schema.INNODB_TRX; kill  上边查询这个字段 trx_mysql_thread_id 的ID即可解锁。 -- kill 24807333 SELECT * FROM information_schema.INNODB_LOCKS; SELECT * FROM information_schema.INNODB_LOCK_WAITS; show open TABLEs WHERE In_use > 0; SELECT * FROM information_schema.INNODB_TRX;

表有如下列

TRX_ID: InnoDB内部的唯一事务ID,不会为只读且非锁定事务创建ID。 TRX_WEIGHT: 事务的权重,反映事务修改和锁定的行数(不一定是准确的数量),当解决死锁时,InnoDB会选择权重最小的事务作为 牺牲品 让其回滚。已经更改非事务表的事务被认为比其他事务的 权重 更重,不管其修改和锁定的行数。 TRX_STATE: 事务的执行状态。值为 RUNNING(运行), LOCK WAIT(等待锁), ROLLING BACK(正在回滚), 和 COMMITTING(正在提交)。 TRX_STARTED:事务开始的时间。 TRX_REQUESTED_LOCK_ID: 如果状态为 锁等待 则为事务当前等待的锁id,否则为空。 TRX_WAIT_STARTED:开始等待锁的时间,如果状态不是 LOCK WAIT,则为空。 TRX_MYSQL_THREAD_ID:MySQL线程ID,要获取更多的线程信息,需要关联INFORMATION_SCHEMA PROCESSLIST表进行查询。 TRX_QUERY:事务正在执行的SQL语句。 TRX_OPERATION_STATE:事务当前的状态。updating or deleting TRX_TABLES_IN_USE:事务执行SQL语句时使用的表的数量。 TRX_TABLES_LOCKED:当前SQL语句在多少张表(表的数量)上持有锁。因为这些是行锁,不是表锁,所以,尽管某些行被锁定,这些表仍然可以被多个事务读写。 TRX_LOCK_STRUCTS:事务保留的锁数量。 TRX_LOCK_MEMORY_BYTES:此事务的锁结构在内存中占用的总大小。 TRX_ROWS_LOCKED:被事务锁定的近似行数。这个值可能包含被标记为删除的行,这些行物理上存在,但已经对事务不可见了。 TRX_ROWS_MODIFIED:事务修改或删除的行数。 TRX_CONCURRENCY_TICKETS:指示当前事务被换出前可以做的工作量的一个值,由 innodb_concurrency_tickets 系统变量指定。 TRX_ISOLATION_LEVEL:事务隔离级别。 TRX_UNIQUE_CHECKS:是否为当前事务打开或关闭唯一性校验。例如,它们可能在批量数据加载期间被关闭。 TRX_LAST_FOREIGN_KEY_ERROR:最后一次外键的错误详情,没有的话为空。 TRX_ADAPTIVE_HASH_LATCHED: 自适应哈希索引是否被当前事务锁定。当自适应哈希索引搜索系统被分区时,单个事务不会锁定整个自适应哈希索引。自适应哈希索引分区由 innodb_adaptive_hash_index_parts 参数控制,默认设为 8。 TRX_ADAPTIVE_HASH_TIMEOUT: 自适应哈希超时时间。是否立即放弃自适应哈希索引的搜索latch,或者在MySQL 的调用中保留它。当没有自适应哈希索引争用时,该值保持为零,并且语句保留 latch 直到它们完成。在争用期间,它倒计时到零,并且语句在每行查找后立即释放 latch。当自适应哈希索引搜索系统被分区(由 innodb_adaptive_hash_index_parts 控制)时,该值保持为 0。 TRX_IS_READ_ONLY:只读事务标识。1代表只读事务。 TRX_AUTOCOMMIT_NON_LOCKING: 无锁自动提交标识。值为1表示事务是一个没有使用 FOR UPDATE 或者 LOCK IN SHARED MODE 字句的SELECT 语句,并且自动提交开启,这样事务就会只包含一条语句。如果这行和 TRX_IS_READ_ONLY 都为1的话,InnoDB会优化事务,以减少事务改变表数据的开销。
在不可复制页面,选中要复制部分,右键查看选中部分源码,复制显示出来的源码,粘贴进输入框,确认即可以得到可复制的文本, 部分页面连选中都不能操作时,可以按F12查看源码,然后复制需要的部分源码出来粘贴查看。