首頁>Database>source

我有事.按以下順序查詢示例:

  1. 開始交易
  2. 更新
  3. 插入
  4. 提交

查詢2超時,但我註意到查詢3没有迴滚。

我還尝試通過在提交之前驗證(查詢表)更新是否通過来手動迴滚.但是当我這樣做時,我得到一个明確的資訊: General error: 2006 MySQL server has gone away 錯誤。

我的問题:

  1. 我有 innodb_rollback_on_timeout 設置為 ON ,难道不應该迴滚查詢3吗?

  2. 由於我什至無法手動迴滚,我有什麼選擇?

註意:這是在mariadb-10.4.17

最新回復
  • 5月前
    1 #

    客戶端是什麼? 是否已打開"自動重新連線"? 關闭它。

    我认為正在發生的事情:

    維兹威兹 發出嘶哑声(以任何方式)並迴滚。

    可能与 UPDATE建立了連線

    維兹威兹 執行成功並自動提交。

    維兹威兹 被默默忽略。

    在每个SQL語句之後放入錯誤檢查。

    autocommit

  • performance:当效能分析記錄執行時間小於1秒時,有什麼能解釋30秒的MySQL SELECT查詢延迟?
  • 增加Oracle資料檔案的大小