mysql 可以分為表級鎖和行級鎖。 這里記錄一下行級鎖。
查看數據庫是否事務自動提交:
1 -- ON 為開啟 OFF為關閉 2 show variables like '%autocommit%'; 3 -- 設置開啟自動提交事務 4 set autocommit =1; 5 -- 設置關閉自動提交事務 6 set autocommit = 0;
兩個事務都有鎖的情況下只有同為共享鎖(S鎖)才不會造成阻塞。
-- mysql 加共享鎖 select ... lock in share mode; -- mysql 加排它鎖 select ... for update; -- 普通查詢沒有鎖機制 select ... ;
如一個事務獲取了一個數據行的排他鎖,其他事務就不能再獲取該行的其他鎖。(沒有鎖機制的查詢語句還是可以進行查詢。)