Rumah  >  Artikel  >  pangkalan data  >  Apakah tiga mod replikasi tuan dan hamba Mysql?

Apakah tiga mod replikasi tuan dan hamba Mysql?

WBOY
WBOYke hadapan
2023-05-28 08:49:262227semak imbas

Replikasi Asynchronous MySQL

Replikasi Asynchronous MySQL ialah mod replikasi lalai semasa proses replikasi master-slave. Replikasi melibatkan tiga benang, termasuk benang I/O induk, benang I/O hamba dan benang SQL hamba. Kerana ia adalah replikasi tak segerak, penyerahan transaksi induk tidak perlu disahkan oleh hamba Iaitu, selepas utas I/O induk menyerahkan transaksi, ia tidak perlu menunggu pengesahan balasan daripada hamba I. /O thread. Master tidak menjamin bahawa binlog akan ditulis ke relay dalam log selepas slave I/O menulis binlog ke relay log, ia dilaksanakan secara tak segerak oleh slave sql thread. . Slave I/O tidak memerlukan pengesahan balasan daripada slave sql, dan tidak menjamin bahawa log geganti ditulis sepenuhnya dalam mysql.

Apakah tiga mod replikasi tuan dan hamba Mysql?

Replikasi separa segerak

Untuk mengimbangi kekurangan replikasi tak segerak tradisional, MySQL memperkenalkan replikasi separa segerak dalam versi 5.5, iaitu penambahbaikan berbanding replikasi tak segerak tradisional. Sebelum urus niaga induk dilakukan, ia mesti dipastikan bahawa log binlog telah ditulis ke log geganti hamba Hanya selepas menerima maklum balas daripada hamba kepada tuan barulah transaksi itu dilakukan. Walaupun begitu, separuh kedua log geganti masih akan dihantar ke benang sql untuk pelaksanaan secara tak segerak.

Apakah tiga mod replikasi tuan dan hamba Mysql?

Replikasi kumpulan

Berdasarkan kecacatan replikasi tak segerak tradisional dan replikasi separa segerak - ketekalan data tidak boleh dijamin, MySQL rasmi dalam Versi 17 melancarkan replikasi kumpulan secara rasmi (MySQL Group Replication, dirujuk sebagai MGR).

Kumpulan replikasi terdiri daripada beberapa nod Penyerahan transaksi mesti diselesaikan dan diluluskan oleh majoriti nod dalam kumpulan (N / 2 + 1) sebelum ia boleh diserahkan. Seperti yang ditunjukkan dalam rajah di atas, kumpulan replikasi terdiri daripada 3 nod Lapisan Konsensus ialah lapisan protokol konsisten Semasa proses penyerahan transaksi, komunikasi antara kumpulan berlaku Hanya apabila 2 nod menyelesaikan (mengesahkan) transaksi akhirnya dapat diselesaikan.

Tujuan utama memperkenalkan replikasi kumpulan adalah untuk menyelesaikan masalah ketidakkonsistenan data yang disebabkan oleh replikasi tak segerak tradisional atau replikasi separa segerak. Replikasi kumpulan bergantung pada protokol ketekalan teragih (varian protokol Paxos) untuk mencapai ketekalan muktamad data teragih dan menyediakan penyelesaian ketersediaan tinggi data sebenar (sama ada ia benar-benar tersedia sangat perlu dibincangkan). Penyelesaian berbilang tulis yang disediakannya membawa harapan kepada kami untuk mencapai penyelesaian berbilang aktif.

Dalam persekitaran MGR, bilangan pelayan mestilah lebih daripada 3 dan nombor ganjil untuk melaksanakan algoritma 2/n+1.

Apakah tiga mod replikasi tuan dan hamba Mysql?

Kumpulan replikasi terdiri daripada beberapa nod (contoh pangkalan data Setiap nod dalam kumpulan itu mengekalkan salinan datanya sendiri (Kongsi Tiada Apa-apa), dan melaksanakan mesej atom dan pesanan Global). mesej untuk mencapai ketekalan data contoh dalam kumpulan.

Penyelesaian MGR kini mempunyai ciri

Jaminan ketekalan data: Pastikan kebanyakan nod dalam kelompok menerima log

Sokongan penulisan Nod Berbilang: Dalam mod berbilang tulis, semua nod dalam kelompok boleh ditulis (tetapi mengambil kira senario konkurensi 1 hingga tinggi untuk memastikan konsistensi data yang tinggi, pengeluaran tidak memilih penulisan berbilang induk, gunakan Kluster induk tunggal)

Toleransi Kesalahan: Pastikan sistem masih tersedia apabila ia gagal (termasuk otak belah), dan tulisan berganda tidak memberi kesan kepada sistem

Impak semasa penyelesaian MGR

  • Hanya menyokong jadual InnoDB dan setiap jadual mesti mempunyai kunci utama untuk pengesanan konflik dalam set tulis; format log perduaan mesti ditetapkan kepada ROW, digunakan untuk pemilihan utama dan set tulis

  • COMMIT boleh menyebabkan kegagalan, serupa dengan senario kegagalan tahap pengasingan transaksi syot kilat

  • Pada masa ini, kluster MGR menyokong sehingga 9 nod

  • Tidak menyokong kunci asing dan menyimpan ciri titik, dan tidak boleh melakukan pengesanan kekangan global dan rollback separa

  • Log binari tidak menyokong acara binlog checksum

Atas ialah kandungan terperinci Apakah tiga mod replikasi tuan dan hamba Mysql?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:yisu.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam