關(guān)于做公司網(wǎng)站建設(shè)你應(yīng)該知道的seo每日一貼
異常問題
原因分析
-
這個(gè)問題發(fā)生在開發(fā)環(huán)境,懷疑是提交事務(wù)時(shí)終止項(xiàng)目運(yùn)行,沒有提交該事務(wù),造成死鎖
-
調(diào)試該事務(wù)時(shí)時(shí)間太長,為什么說有這個(gè)原因呢,因?yàn)橥ㄟ^查找日志顯示
The client was disconnected by the server because of inactivity. See wait_timeout and interactive_timeout for configuring this behavior.
問題排查
# 當(dāng)前運(yùn)行的所有事務(wù)
select * from information_schema.innodb_trx;
# 查看鎖的持有和請求情況 MySQL8.0
select * from performance_schema.data_locks;
# 查看鎖的等待情況 MySQL8.0
select * from performance_schema.data_lock_waits;
# 當(dāng)前線程詳情
show full processlist;
1.發(fā)現(xiàn)事務(wù)id176602一直在運(yùn)行狀態(tài)
-
鎖的持有和請求情況
-
kill 掉事務(wù)關(guān)聯(lián)的mysql線程ID (trx_mysql_thread_id)
KILL 362
trx_mysql_thread_id = 0 無法Kill 接著排查確認(rèn) trx_mysql_thread_id = 0 為XA(分布式)事務(wù)
-
執(zhí)行回滾操作
#查看XA事務(wù)信息
xa recover;
#執(zhí)行報(bào)錯(cuò)可能沒有權(quán)限
GRANT XA_RECOVER_ADMIN ON *.* TO root@'%' ;
得到
回滾XA事務(wù)操作
# XA事務(wù)回滾命令的格式:
xa rollback 'left(data,gtrid_length)','substr(data,gtrid_length+1,bqual_length)', formatID;
#示列
SELECT left('55f3cdd8-4f45-49c8-bbca-2738fa5a1514:35',38);
SELECT substr('55f3cdd8-4f45-49c8-bbca-2738fa5a1514:35',39,1);
xa rollback '55f3cdd8-4f45-49c8-bbca-2738fa5a1514:3', '5',1;
文章轉(zhuǎn)載自:無顏組
原文鏈接:https://www.cnblogs.com/wenyan9-29/p/18204520
體驗(yàn)地址:引邁 - JNPF快速開發(fā)平臺_低代碼開發(fā)平臺_零代碼開發(fā)平臺_流程設(shè)計(jì)器_表單引擎_工作流引擎_軟件架構(gòu)