BT Sözlüğü › Veritabanları › Tablo kilidi

Tablo kilidi

Veritabanları Svenska → Güncellendi: 2026-10-11

Tek tek satırlar yerine tablonun tamamına konan kilit. PostgreSQL’in 8 düzeyi vardır (AccessShare, RowShare, RowExclusive, ShareUpdateExclusive, Share, ShareRowExclusive, Exclusive, AccessExclusive). Esas olarak DDL işlemlerinde alınır.

AccessShare = SELECT, AccessExclusive dışındaki her şeyle uyumlu. AccessExclusive = SELECT dahil her şeyi engeller — ALTER TABLE, DROP TABLE ve REINDEX tarafından alınır. Anti-desen: 100 milyon satırlı bir tabloya varsayılan değerli ALTER TABLE ADD COLUMN → tablonun tamamen yeniden yazılması ve birkaç dakikalık kilit → uygulama kesintisi. Modern PG (11+): null olabilen ve değişmeyen varsayılanlar için yeniden yazma yapılmaz. Çevrimiçi DDL araçları: pt-online-schema-change (Percona), gh-ost (GitHub), pgroll (Xata). MySQL InnoDB’nin çevrimiçi DDL’i birçok işlemi kilitsiz halleder.

← Sözlüğe dön