搜尋

首頁  >  問答  >  主體

如何顯示MySQL中未完成的事務

<p>我在沒有提交的情況下進行了一些查詢。然後應用程式被停止。 </p> <p>如何顯示這些未結帳交易並提交或取消它們? </p>
P粉176151589P粉176151589537 天前521

全部回覆(2)我來回復

  • P粉463824410

    P粉4638244102023-08-28 11:18:36

    雖然在這種情況下不會有任何剩餘事務,正如@Johan所說,但如果你願意,你可以透過下面的查詢查看InnoDB中當前的事務清單。

    從 information_schema.innodb_trx\G 中選擇*

    #

    來自文件

    回覆
    0
  • P粉726133917

    P粉7261339172023-08-28 09:36:30

    沒有開啟的事務,MySQL 會在斷開連線時回滾事務。
    您無法提交事務 (IFAIK)。

    您使用以下方式顯示執行緒

    SHOW FULL PROCESSLIST

    請參閱:http://dev.mysql.com/ doc/refman/5.1/en/thread-information.html

    這對您沒有幫助,因為您無法從斷開的連線提交交易。

    連線中斷時會發生什麼事
    來自 MySQL 文件: http://dev.mysql.com/ doc/refman/5.0/en/mysql-tips.html

    另請參閱:http://dev.mysql.com /doc/refman/5.0/en/auto-reconnect.html

    如何診斷和解決此問題
    檢查自動重新連線:

    確保將最後一個查詢(交易)保留在客戶端中,以便您可以在需要時重新提交。
    並停用自動重新連接模式,因為這很危險,請改為實現您自己的重新連接,以便您知道何時發生丟棄並且可以重新提交該查詢。

    回覆
    0
  • 取消回覆