我正在通過MYSQL使用innoDB數據庫引擎。如果多個事務在幾毫秒內發生,數據庫如何執行事務?在執行下一個交易之前,它是否一次只允許一個交易並延遲?MYSQL如何優先查詢?
0
A
回答
1
單獨的連接可以同時運行的事務。隨着交易的進行,各種鎖(「互斥」)被獲取。在某些情況下(例如更新同一行的兩個連接),鎖將阻塞一個事務直到另一個事務完成。在某些情況下會發生「死鎖」,並且一個事務將被ROLLBACK。在其他情況下,一個事務將超時等待鎖。 (默認時間爲這50秒,我很少看到它。)
鎖被設計使它看起來無任何事務可以與任何其他干擾,然而讓交易運行「同時」。
0
在InnoDB中,所有用戶活動在事務內發生。
如果自動提交模式已啓用,則每個SQL語句將自行形成單個事務。 默認情況下,MySQL的啓動與啓用自動提交每個新連接的會話,因此MySQL的一個每個SQL語句之後提交如果語句未返回一個錯誤。如果語句返回錯誤,則提交或回滾行爲取決於錯誤。
啓用自動提交的會話可以通過以明確的START TRANSACTION或BEGIN語句啓動並以COMMIT或ROLLBACK語句結束來執行多語句事務。
如果自動提交模式與SET自動提交= 0會話中禁用,會話總有開放的交易。 COMMIT或ROLLBACK語句結束當前事務並開始一個新事務。開放。 COMMIT或ROLLBACK語句結束當前事務並開始一個新事務。
更多請閱讀: - http://dev.mysql.com/doc/refman/5.0/en/innodb-transaction-model.html
相關問題
- 1. 優先查詢
- 2. Mysql中的低優先級查詢
- 3. 廣度優先搜索查詢在MYSQL
- 4. 如何優化MySQL查詢
- 5. 如何優化MySQL查詢
- 6. 如何優化MySQL查詢?
- 7. 如何優化mysql查詢
- 8. 如何優先考慮某些查詢?
- 9. 如何查詢issuetype和優先級?
- 10. 如何優先考慮MySQL中的某些查詢?
- 11. mysql如何選擇優先
- 12. Solr的查詢優先
- 13. 媒體查詢優先
- 14. PostgreSQL的查詢優先
- 15. SQL優先級查詢
- 16. SQL Server 2005 - 優先查詢
- 17. CSS優先級查詢
- 18. INSERT查詢優先級
- 19. xpath - 如何結合具有查詢優先級的查詢
- 20. 如何優化SQL查詢組具有優先級列
- 21. MySQL查詢優化
- 22. mysql查詢優化
- 23. MySQL優化查詢
- 24. 優化mysql查詢
- 25. Mysql查詢優化
- 26. 優化mysql查詢
- 27. MySQL查詢 - 優化
- 28. MySQL查詢優化
- 29. MySQL查詢優化
- 30. MySQL查詢優化
單用戶線程在MySQL中是同步的。對於並發動作,有一個「TABLOCK」。 – BlitZ
脫離主題,但幾乎沒有意見。 – EJP
那麼InnoDB支持行級鎖,所以改變一個表的不同行可能幾乎同時進行(或那些在幾毫秒內) – spaceman