Memahami proses kegigihan data MySQL boleh membantu kami memperdalam pemahaman tentang MySQL yang mendasari Dalam artikel ini, kami akan menyelesaikan proses ini dengan cara yang popular semua orang mewujudkan pemahaman awal Jika anda berminat, anda boleh mengkaji dan menyelidik proses ini secara mendalam.
Storan data MySQL secara amnya boleh dibahagikan kepada dua bahagian, prosedur tersimpan dalam memori dan storan berterusan pada cakera keras Di sini, ia melibatkan buffer poll
dan redo log
dalam memori dan dan 事务日志
, dalam artikel ini, kami tidak akan menerangkan reka bentuk khusus setiap bahagian secara terperinci, tetapi hanya memberi anda pemahaman konsep: 表结构
ialah cache enjin InnoDB pool Sebahagian daripadanya, kita boleh fahami di sini sebagai cache blok memori yang dibaca oleh pangkalan data daripada cakera ke dalam memori buffer poll
ialah log logik dalam ingatan, merekodkan operasi perubahan transaksiredo log
ialah log logik makanan pada cakera事务日志
ialah struktur yang sebenarnya menyimpan data 表结构
mempunyai cache untuk data dibaca ke dalam memori arahan dilaksanakan, ia akan dilihat dalam cache terlebih dahulu, sama ada ia adalah hit atau tidak, data yang diperlukan akan dibaca daripada cakera Pengurusan cache menggunakan algoritma LRU yang dipertingkatkan, yang tidak akan diperkenalkan secara mendalam di sini. buffer poll
Data yang diubah suai akan ditandakan sebagai buffer poll
Pada masa yang sama, operasi yang diubah suai juga direkodkan dalam 脏页
, rangkaian versi dalam MVCC yang sering kita katakan dilaksanakan dengan bantuan redo log
. redo log
antara 随机IO
dan 顺序IO
:
bermaksud ruang yang dialamatkan adalah berterusan dan jarak bergerak yang sangat pendek 顺序IO
bermakna alamat yang perlu kita cari diedarkan di mana-mana dan perlu bergerak jauh. 随机IO
dengan 随机IO
dengan berkesan boleh meningkatkan kecekapan cakera IO Ini adalah apa yang log logik lakukan, kerana fail log berada pada cakera. Secara berterusan, berbanding maklumat jadual data yang diedarkan di mana-mana, kecekapan IO boleh menjadi lebih tinggi. 顺序IO
Atas ialah kandungan terperinci Analisis contoh proses kegigihan data MySQL. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!