共有ロックとは?
共有ロックとは、データを読むために掛けるロック。同じデータに複数のトランザクションが同時に掛けられるが、専有ロックとは両立しない。
応用情報技術者試験の過去問では1回出題されています。
きょうゆうロック
共有ロックの意味
データを読むために掛けるロック。同じデータに複数のトランザクションが同時に掛けられるが、専有ロックとは両立しない。
共有ロックの具体例
参照だけの処理どうしは互いに待たされない。
共有ロックは試験でどう引っ掛けられる?
両立表の向きを取り違えないこと。共有×共有は両立、共有×専有と専有×専有は両立しない。また「読むだけだから安全」ではなく、2つのトランザクションが同じ行に共有ロックを掛けたまま双方が専有ロックへ昇格しようとすると互いに待ち合ってデッドロックになる(昇格デッドロック)。
共有ロックと関連する用語
共有ロックが出た過去問
RDBMSのロックに関する記述のうち、適切なものはどれか。ここで、X, Yはトランザクションとする。
正解:XがA表内の特定行aに対して共有ロックを獲得しているときは、YはA表に対して専有ロックを獲得することができない。
要点:ロックは粒度が違っても、範囲が重なれば共有と専有は競合する
表の一部の行に共有ロックが掛かっている状態で、別のトランザクションが表全体に専有ロックを掛けられてしまうと、その行を書き換えられてしまい矛盾します。そのため、行ロックと表ロックの整合を取る意図ロックの仕組みにより、表全体への専有ロックは獲得できません。粒度の違うロックどうしも競合しうる点が要点です。
出典:令和1年度 秋期 応用情報技術者試験 午前 問28(IPA)
最終更新:2026-08-25/解説は資格暗記が独自に作成しています。 過去問の出典は各問題に記載のとおりです。