ホームページ  >  記事  >  データベース  >  mysqlギャップロックの使い方

mysqlギャップロックの使い方

WBOY
WBOY転載
2023-05-29 10:31:051332ブラウズ

間隔ロック、1 つのインデックス間隔のみをロック (オープン間隔、両端のエンドポイントを除く)

1. インデックス レコード間のギャップのロック、またはインデックス レコードの前後のロック、インデックス レコード自体は含まれていません。

2. ギャップ ロックを使用すると、ファントム読み取りを防止し、インデックス間にデータが挿入されないようにすることができます。

session 1:
start  transaction ;
select  * from news where number=4 for update ;
 
session 2:
start  transaction ;
insert into news value(2,4);#(阻塞)
insert into news value(2,2);#(阻塞)
insert into news value(4,4);#(阻塞)
insert into news value(4,5);#(阻塞)
insert into news value(7,5);#(执行成功)
insert into news value(9,5);#(执行成功)
insert into news value(11,5);#(执行成功)

以上がmysqlギャップロックの使い方の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はyisu.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。