[英]Lock innoDB table temporarily
我在當前的Web應用程序中制作了包含兩千行的較大的插入,並且我想確保在插入完成之前,除了讀取表以外,其他任何人都無法做。
在保持正常的非管理員用戶可讀性的同時,做到這一點的最佳方法是什么?
謝謝!
由於您僅插入(而不更新),因此這不是問題。 只需將記錄插入單個事務中。
如果我沒記錯的話,InnoDB支持行級鎖定,因此即使更新也不成問題。
您可能還需要更改默認隔離級別:
set transaction isolation level serializable;
start transaction;
// insert data
commit
為什么不只在一次大交易中插入? 這樣可以避免進行任何鎖定。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.