我正在使用MySQL數據庫,我想知道如果我爲了從多個表中獲取信息而同時進行多個(500個以上)查詢,如何處理這些查詢?按順序還是並行?如何在MySQL數據庫中處理併發查詢?
7
A
回答
6
0
通常所有查詢都將並行運行。
但是......有一些例外。根據您的事務隔離級別,可以在更新時鎖定一行。閱讀更多關於此處的信息:http://dev.mysql.com/doc/refman/5.1/en/dynindex-isolevel.html
5
每個連接可以一次運行最多一個查詢,並在單個線程中執行。服務器爲每個查詢打開一個線程。
通常,希望查詢不會彼此阻塞。然而,根據引擎和查詢,他們可能會。 MySQL中有很多鎖定,本手冊將對此進行詳細討論。
但是,如果他們不互相阻塞,他們仍然可以通過消耗資源來減慢彼此的速度。 IO操作是這些減速的一個特定來源。如果你的數據不適合內存,你應該將並行查詢的數量限制在你的IO子系統可以處理的範圍內,否則事情會變得非常糟糕。衡量是關鍵。
我通常會說,如果500個查詢一次運行(而不是等待鎖),則可能無法從硬件中獲得最大價值(您是否有500個內核?有多少個線程正在等待IO?)
相關問題
- 1. 如何處理數據庫併發
- 2. 如何處理\查詢mysql
- 3. PHP OOP如何處理數據庫查詢返回的數據
- 4. 如何處理數據庫中的併發更新?
- 5. SQLite數據庫查詢異常處理
- 6. MYSQL - 如何查找向數據庫發送查詢的文件
- 7. 如何處理數據併發?
- 8. 如何處理許多不同的查詢引用並避免在MySQL數據庫中進行硬編碼
- 9. 如何將地理數據存儲在android數據庫中並查詢它?
- 10. 如何加快MySQL數據庫/查詢?
- 11. 如何正確查詢MySQL數據庫
- 12. 在Docker中查詢MySql數據庫
- 13. 在數據庫中創建多個查詢,或者處理數據並僅創建一個查詢?
- 14. 如何處理多語種MySQL查詢?
- 15. 我們如何處理NHibernate的數據庫併發?
- 16. 數據庫引擎如何處理併發插入?
- 17. 如何處理JUNIT測試數據庫查詢
- 18. 如何在3臺計算機之間處理數據庫查詢數據?
- 19. MySQL查詢數據庫中查看
- 20. mysql查詢數據庫
- 21. 查詢MySQL數據庫
- 22. 查詢MySQL數據庫
- 23. 查詢MySQL數據庫
- 24. 查詢數據庫MySQL
- 25. 查詢MySQL數據庫
- 26. MySQL數據庫表查詢
- 27. 獲取bootstraps typeahead功能在rails中處理數據庫查詢
- 28. MySQL查詢並不在C#中工作,但是當數據庫
- 29. MySQL數據庫中的文件處理?
- 30. 在Spring批處理中查詢批處理作業元數據
雖然一個查詢是單線程的。 – 2013-10-31 23:17:25