Rumah  >  Artikel  >  Apakah tahap pengasingan transaksi lalai mysql?

Apakah tahap pengasingan transaksi lalai mysql?

zbt
zbtasal
2023-08-08 10:37:462282semak imbas

MySQL ialah sistem pengurusan pangkalan data hubungan yang digunakan secara meluas yang menyokong pemprosesan transaksi. Transaksi ialah satu set operasi pangkalan data yang dilaksanakan bersama sebagai unit logik. Untuk memastikan konsistensi dan pengasingan transaksi, MySQL menyediakan tahap pengasingan transaksi yang berbeza.

Apakah tahap pengasingan transaksi lalai mysql?

Persekitaran pengendalian tutorial ini: sistem windows10, versi mysql8.0.16, komputer DELL G3.

MySQL ialah sistem pengurusan pangkalan data hubungan yang digunakan secara meluas yang menyokong pemprosesan transaksi. Transaksi ialah satu set operasi pangkalan data yang dilaksanakan bersama sebagai unit logik. Untuk memastikan konsistensi dan pengasingan transaksi, MySQL menyediakan tahap pengasingan transaksi yang berbeza.

Tahap pengasingan transaksi mentakrifkan keterlihatan dan skop pengaruh antara operasi dalam transaksi dan transaksi lain. MySQL menyediakan empat tahap pengasingan transaksi: BACA UNCOMMITTED (baca tanpa komitmen), READ COMMITTED (baca komited), BOLEH DIULANG BACA (bacaan berulang) dan BOLEH BERSIRI (boleh bersiri). Tahap pengasingan ini seterusnya memberikan tahap pengasingan yang lebih tinggi, tetapi juga boleh menyebabkan overhed prestasi serentak yang lebih tinggi.

Secara lalai, tahap pengasingan transaksi MySQL BOLEH DIULANG BACA. Pada tahap ini, urus niaga mencipta pandangan yang konsisten, gambaran pangkalan data pada satu masa apabila urus niaga bermula. Ini bermakna bahawa data yang dilihat oleh transaksi semasa pelaksanaan adalah berbeza daripada data yang diubah suai oleh transaksi lain secara serentak. Walaupun urus niaga lain mengubah suai beberapa data, perkara yang dilihat urus niaga dalam paparan konsistensinya sendiri masih merupakan petikan pada permulaan transaksi.

Tahap BACA YANG BOLEH DIULANG, transaksi boleh menjamin perkara berikut:

1 Data yang dibaca adalah konsisten dengan permulaan transaksi dan tidak akan berubah semasa pelaksanaan transaksi.

2. Perubahan yang dibuat oleh urus niaga selari yang lain semasa transaksi tidak dapat dilihat oleh transaksi dan tidak akan menjejaskan data yang dibaca oleh transaksi.

3. Perubahan yang dibuat oleh urus niaga kepada urus niaga lain tidak dapat dilihat, dan urus niaga selari lain tidak boleh membaca data yang tidak terikat dalam transaksi.

BOLEH DIULANG Kelebihan tahap READ ialah ia menyediakan ketekalan dan pengasingan data yang tinggi, dan sesuai untuk senario di mana berbilang transaksi serentak membaca data yang sama. Walau bagaimanapun, ia juga boleh menyebabkan prestasi konkurensi yang lebih tinggi overhed dan pertikaian kunci.

Dalam aplikasi sebenar, kami boleh memilih tahap pengasingan transaksi yang sesuai berdasarkan keperluan perniagaan dan keperluan prestasi tertentu. Jika anda memerlukan prestasi konkurensi yang lebih tinggi dan perbalahan kunci yang lebih rendah, anda boleh mempertimbangkan untuk menurunkan tahap pengasingan transaksi. Jika anda memberi lebih perhatian kepada ketekalan dan pengasingan data, anda boleh memilih tahap pengasingan transaksi yang lebih tinggi.

MySQL menyediakan penyata untuk menetapkan tahap pengasingan transaksi, yang boleh digunakan sebelum transaksi bermula atau dalam transaksi. Sebagai contoh, anda boleh menggunakan pernyataan berikut untuk menetapkan tahap pengasingan transaksi kepada READ COMMITTED:

SET TAHAP PENGASINGAN TRANSAKSI DIBACA KOMITED

Ringkasnya, tahap pengasingan transaksi lalai MySQL adalah BOLEH DIULANG READ, yang menyediakan ketekalan dan pengasingan data yang lebih tinggi, tetapi mungkin membawa overhed prestasi serentak yang lebih tinggi. Bergantung pada senario aplikasi tertentu, kami boleh memilih tahap pengasingan transaksi yang sesuai secara fleksibel.

Atas ialah kandungan terperinci Apakah tahap pengasingan transaksi lalai mysql?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn