簡體   English   中英

臨時鎖定innoDB表

[英]Lock innoDB table temporarily

我在當前的Web應用程序中制作了包含兩千行的較大的插入,並且我想確保在插入完成之前,除了讀取表以外,其他任何人都無法做。

在保持正常的非管理員用戶可讀性的同時,做到這一點的最佳方法是什么?

謝謝!

由於您僅插入(而不更新),因此這不是問題。 只需將記錄插入單個事務中。

如果我沒記錯的話,InnoDB支持行級鎖定,因此即使更新也不成問題。

您可能還需要更改默認隔離級別:

 set transaction isolation level serializable;
 start transaction;
 // insert data
 commit

為什么不只在一次大交易中插入? 這樣可以避免進行任何鎖定。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM