溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

MySQL未提交事務(wù)造成的等待事件怎么解決

發(fā)布時間:2021-12-01 09:05:54 來源:億速云 閱讀:467 作者:iii 欄目:MySQL數(shù)據(jù)庫

本篇內(nèi)容主要講解“MySQL未提交事務(wù)造成的等待事件怎么解決”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學(xué)習(xí)“MySQL未提交事務(wù)造成的等待事件怎么解決”吧!

開發(fā)人員過來說程序中無法修改數(shù)據(jù)
 ERROR 1205 (HY000): Lock wait timeout exceeded; try restarting transaction
 
查看是如下SQL語句造成的
UPDATE
                MemberAttribute
        SET name = '而',required = 1, enabled = 1, sequence = 34
         
                , memberTemplate_id = 698
         
        WHERE
                id = 284 and deleted = false;

剛開始一直考慮死鎖,但一直無死鎖信息

如果單獨的一條sql是不會千萬死鎖的,肯定有其他語句
查看未提交的事務(wù)
SELECT
     a.trx_id,
     a.trx_state,
     a.trx_started,
     a.trx_query,
     b.ID,
     b.USER,
     b.DB,
     b.COMMAND,
     b.TIME,
     b.STATE,
     b.INFO,
     c.PROCESSLIST_USER,
     c.PROCESSLIST_HOST,
     c.PROCESSLIST_DB,
     d.SQL_TEXT
FROM
     information_schema.INNODB_TRX a
LEFT JOIN information_schema.PROCESSLIST b ON a.trx_mysql_thread_id = b.id
AND b.COMMAND = 'Sleep'
LEFT JOIN PERFORMANCE_SCHEMA.threads c ON b.id = c.PROCESSLIST_ID
LEFT JOIN PERFORMANCE_SCHEMA.events_statements_current d ON d.THREAD_ID = c.THREAD_ID;
MySQL未提交事務(wù)造成的等待事件怎么解決

確實有未提交事務(wù)

查看未提交線程id
SELECT * FROM information_schema.INNODB_TRX \G
*************************** 12. row ***************************
                    trx_id: 188721461
                 trx_state: RUNNING
               trx_started: 2016-01-06 09:41:22
     trx_requested_lock_id: NULL
          trx_wait_started: NULL
                trx_weight: 26
       trx_mysql_thread_id: 2122328
                 trx_query: NULL
       trx_operation_state: NULL
         trx_tables_in_use: 0
         trx_tables_locked: 0
          trx_lock_structs: 24
     trx_lock_memory_bytes: 6544
           trx_rows_locked: 3003
         trx_rows_modified: 2
   trx_concurrency_tickets: 0
       trx_isolation_level: REPEATABLE READ
         trx_unique_checks: 1
    trx_foreign_key_checks: 1
trx_last_foreign_key_error: NULL
 trx_adaptive_hash_latched: 0
 trx_adaptive_hash_timeout: 0
          trx_is_read_only: 0
trx_autocommit_non_locking: 0
與niravana數(shù)據(jù)庫相關(guān)的進程只有2122328
kill 2122328
再次修改即可

到此,相信大家對“MySQL未提交事務(wù)造成的等待事件怎么解決”有了更深的了解,不妨來實際操作一番吧!這里是億速云網(wǎng)站,更多相關(guān)內(nèi)容可以進入相關(guān)頻道進行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!

向AI問一下細節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI