Mysql
MySQL INSERT … SELECT 性能
我知道這個查詢會鎖定
table2
:UPDATE table1... SELECT .. FROM table2
這個查詢怎麼樣?
INSERT INTO table1... SELECT .. FROM table2
此查詢是否還會創建鎖定
table2
?
你剛問
做:
INSERT INTO table1... SELECT .. FROM table2
還在table2上創建一個鎖?
是的,它確實會在
table2
.我早在 2014 年 8 月 8 日就寫過關於這種行為的文章(請參閱我對MySQL 一致非鎖定讀取與 INSERT … SELECT的回答)在我的舊文章中,我從 MySQL 文件中提到:
預設情況下,InnoDB 使用更強的鎖,並且 SELECT 部分的行為類似於 READ COMMITTED,其中每個一致的讀取,即使在同一個事務中,設置並讀取自己的新快照