Tahap baris dikunci dalam innodb
过去多啦不再A梦
过去多啦不再A梦 2017-05-17 10:05:00
0
4
941

Innodb melaksanakan dua kunci peringkat baris, satu kunci dikongsi dan satu lagi kunci eksklusif.
Maafkan saya:
(1) Bolehkah kunci peringkat baris hanya dimuatkan pada rekod baris? Mengapakah saya nampak beberapa menyebut bahawa kunci kongsi dan kunci eksklusif juga boleh digunakan pada peringkat meja?

Boleh beri saya tips

过去多啦不再A梦
过去多啦不再A梦

membalas semua(4)
Ty80

Kunci baris InnoDB hanya berkesan apabila pernyataan kunci (iaitu, UNTUK KEMASKINI dan MOD KONGSI TERKUNCI) menggunakan indeks, kerana InnoDB sebenarnya mengunci baris berdasarkan indeks. Iaitu, jika tiada indeks digunakan, kunci secara automatik dinaikkan ke paras jadual.

洪涛

Seperti yang dinyatakan di atas, apabila tahap pengasingan urus niaga dibaca berulang (tahap lalai mysql)
Apabila enjin InnoDB mengubah suai dan memadam data, ia akan mencari indeks yang sepadan terlebih dahulu, dan indeks diisih nilai atau julat tertentu akan dikunci.
Jika julat ini ialah keseluruhan segmen indeks, maka keseluruhan data jadual akan dikunci sebagai tambahan, jika tiada indeks, keseluruhan jadual akan diimbas semasa operasi pengubahsuaian dan pemadaman, dan keseluruhan jadual akan secara semula jadi; terkunci.

迷茫

InnoDB melaksanakan dua jenis kunci baris berikut.
Kunci kongsi: Kunci eksklusif yang membenarkan satu transaksi membaca baris dan menghalang transaksi lain daripada mendapatkan set data yang sama.
Kunci eksklusif (X): Membenarkan urus niaga yang memperoleh kunci eksklusif untuk mengemas kini data dan menghalang transaksi lain daripada memperoleh kunci baca kongsi dan kunci tulis eksklusif pada set data yang sama.
Selain itu, untuk membolehkan kunci baris dan kunci meja wujud bersama dan melaksanakan mekanisme penguncian berbilang butiran, InnoDB juga mempunyai dua kunci niat yang digunakan secara dalaman (Kunci Niat), yang kedua-duanya adalah kunci meja.
Kunci kongsi niat (IS): Urus niaga berhasrat untuk berkongsi kunci pada baris data Urus niaga mesti mendapatkan kunci IS jadual terlebih dahulu sebelum menambah kunci dikongsi pada baris data.
Kunci eksklusif niat (IX): Urus niaga berhasrat untuk menambah kunci eksklusif pada baris data Urus niaga mesti mendapatkan kunci IX jadual terlebih dahulu sebelum menambah kunci eksklusif pada baris data.

Kunci baris ditambahkan pada baris, manakala kunci meja sepadan dengan keseluruhan jadual. Kunci baris dan kunci meja boleh wujud bersama!

曾经蜡笔没有小新

Kunci boleh didapati dalam enjin mysql. Kunci baris dan kunci meja dibezakan dari perspektif kebutiran kunci

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan