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

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

王林
王林転載
2023-06-02 21:56:281109ブラウズ

説明

1. 範囲条件を使用してデータを取得し、共有ロックまたは排他ロックをリクエストすると、InnoDB は条件を満たす既存のデータ レコードのインデックス アイテムをロックします。キー値が条件範囲内にあるのに存在しないものをギャップといいます。

2. InnoDB はこのギャップもロックします。このロック メカニズムはいわゆるギャップ ロックです。

注意

実行条件が範囲が大きすぎる場合、InnoDB は範囲全体のすべてのインデックス キー値をロックするため、パフォーマンスに影響しやすくなります。 。

Transaction-A
mysql> update innodb_lock set k=66 where id >=6;
Query OK, 1 row affected (0.63 sec)
mysql> commit;
 
Transaction-B
mysql> insert into innodb_lock (id,k,v) values(7,'7','7000');
Query OK, 1 row affected (18.99 sec)

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

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