Rumah  >  Artikel  >  pangkalan data  >  Pengedaran data MySql: bagaimana untuk melaksanakan mekanisme replikasi tuan-hamba

Pengedaran data MySql: bagaimana untuk melaksanakan mekanisme replikasi tuan-hamba

WBOY
WBOYasal
2023-06-15 22:25:401071semak imbas

MySql ialah sistem pengurusan pangkalan data hubungan yang popular Replikasi data digunakan secara meluas untuk mencapai sandaran data, pengimbangan beban dan ketersediaan tinggi. Dalam MySql, anda boleh menggunakan mekanisme replikasi induk-hamba untuk mencapai pengedaran data, membenarkan berbilang sistem mengakses data yang sama Artikel ini akan memperkenalkan cara melaksanakan mekanisme replikasi induk-hamba dalam MySql.

1. Konsep asas mekanisme replikasi induk-hamba

Mekanisme replikasi induk-hamba adalah ciri penting pangkalan data MySql Ia boleh membantu mencapai pengedaran dan sandaran data data pada pelayan utama Meniru secara serentak kepada satu atau lebih pelayan hamba untuk mencapai pengedaran data. Dalam MySql, pelayan induk bertanggungjawab untuk memproses semua operasi kemas kini data, manakala pelayan hamba mencapai akses data dengan menyalin data pelayan induk.

Dalam mekanisme replikasi tuan-hamba MySql, pelayan induk menulis rekod perubahan datanya sendiri ke fail log binarinya (log binari), dan pelayan hamba memperoleh maklumat pada pelayan induk dengan membaca binari fail log. Dengan cara ini, pelayan hamba boleh menyegerakkan data pada pelayan induk dalam masa nyata, menjadikannya lebih mudah dan lebih cekap untuk berbilang sistem untuk mengakses data pada masa yang sama.

2. Kaedah konfigurasi mekanisme replikasi tuan-hamba

  1. Prasyarat

Sebelum mengkonfigurasi mekanisme replikasi tuan-hamba, anda perlu memastikan bahawa pelayan induk dan pelayan hamba Pangkalan data MySql telah dipasang dan versinya adalah sama. Di samping itu, anda perlu memastikan bahawa pelayan induk dan hamba boleh mengakses satu sama lain, dan pelayan induk telah mendayakan fungsi log binari.

  1. Konfigurasikan pelayan induk

Langkah 1: Buat pengguna pada pelayan induk untuk replikasi daripada pelayan hamba dan benarkan ia mengakses semua pangkalan data pelayan induk. Sebagai contoh, kita boleh mencipta pengguna bernama replicator dan memberikannya akses kepada semua pangkalan data.

CREATE USER 'replicator'@'%' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON *.* TO 'replicator'@'%' WITH GRANT OPTION;

Langkah 2: Dayakan fungsi log binari pelayan utama. Tambahkan parameter berikut dalam fail konfigurasi my.cnf pelayan induk:

[mysqld]
log_bin=mysql-bin
server-id=1

Parameter id pelayan mewakili pengecam unik pelayan induk Setiap pelayan induk harus mempunyai pengecam yang berbeza. Di sini kami menetapkannya kepada 1 dan menetapkan awalan fail log binari kepada mysql-bin.

Langkah 3: Mulakan semula pelayan utama untuk membuat perubahan dalam fail konfigurasi berkuat kuasa.

  1. Konfigurasikan pelayan hamba

Langkah 1: Buat pengguna untuk akses pelayan induk pada pelayan hamba dan benarkan ia mengakses semua pangkalan data yang perlu direplikasi. Sebagai contoh, kita boleh mencipta pengguna bernama sandaran dan memberikannya akses kepada semua pangkalan data.

CREATE USER 'backup'@'%' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON *.* TO 'backup'@'%' WITH GRANT OPTION;

Langkah 2: Tambah parameter berikut dalam fail konfigurasi my.cnf pelayan hamba:

[mysqld]
server-id=2
relay-log=mysql-relay
log_slave_updates=1
read_only=1

Tidak seperti pelayan induk, pelayan hamba tidak perlu mendayakan fungsi log binari . Nilai parameter pelayan-id perlu berbeza daripada pelayan utama, di sini kami menetapkannya kepada 2. Parameter log geganti menentukan lokasi penyimpanan rekod perubahan data yang diterima daripada pelayan Di sini kami menamakannya mysql-relay. Parameter log_slave_updates menunjukkan bahawa pelayan hamba juga perlu menulis rekod perubahan data yang dijananya kepada fail log binarinya sendiri. Parameter read_only menunjukkan bahawa pelayan hamba hanya boleh digunakan untuk operasi baca dan tidak boleh menulis operasi ke pangkalan data.

Langkah 3: Mulakan semula pelayan hamba untuk membuat perubahan dalam fail konfigurasi berkuat kuasa.

  1. Mulakan replikasi

Langkah 1: Jalankan arahan berikut pada pelayan hamba untuk mewujudkan sambungan dengan pelayan induk.

CHANGE MASTER TO MASTER_HOST='主服务器IP地址', MASTER_USER='replicator', 
MASTER_PASSWORD='password', MASTER_PORT=3306, MASTER_LOG_FILE='mysql-bin.000001', 
MASTER_LOG_POS=107;

Di mana, parameter MASTER_HOST ialah alamat IP pelayan induk, dan parameter MASTER_USER dan MASTER_PASSWORD ialah nama pengguna dan kata laluan pengguna yang dibuat pada pelayan induk untuk replikasi daripada pelayan. Parameter MASTER_PORT menunjukkan nombor port pelayan utama, di sini kami menetapkannya kepada 3306. Parameter MASTER_LOG_FILE dan MASTER_LOG_POS menentukan kedudukan fail log perduaan untuk mula menyalin data daripada pelayan dan mengekalkan penyegerakan Di sini kami menganggap bahawa kami ingin mula menyalin daripada bait ke-107 bagi data fail log binari pertama (mysql-bin.000001).

Langkah 2: Mulakan fungsi replikasi daripada pelayan hamba.

START SLAVE;

Dengan arahan ini, pelayan hamba mula menyalin data daripada pelayan induk. Anda boleh menyemak status replikasi melalui arahan "SHOW SLAVE STATUSG".

  1. Ujian Replikasi

Untuk menguji sama ada replikasi berfungsi dengan betul, kita boleh memasukkan beberapa data pada pelayan induk dan melihat sama ada data telah berjaya direplikasi pada pelayan hamba .

Laksanakan arahan berikut pada pelayan utama untuk memasukkan rekod ke dalam jadual data.

INSERT INTO test_table (name, age) VALUES ('Tom', 25);

Laksanakan arahan berikut pada pelayan hamba untuk menyemak sama ada data dalam jadual test_table telah disegerakkan.

SELECT * FROM test_table;

Jika data yang dimasukkan dapat dilihat pada pelayan hamba, ini bermakna mekanisme replikasi tuan-hamba telah berjaya dikonfigurasikan dan dimulakan.

3. Ringkasan

Mekanisme replikasi tuan-hamba MySql ialah cara penting untuk mencapai pengedaran dan penyegerakan data, dan digunakan secara meluas dalam projek sebenar. Artikel ini memperkenalkan cara untuk mengkonfigurasi mekanisme replikasi induk-hamba dalam MySql, termasuk mengkonfigurasi pelayan induk dan pelayan hamba, dan mewujudkan saluran replikasi antara pelayan induk dan hamba. Melalui langkah di atas, anda boleh melaksanakan fungsi replikasi tuan-hamba dengan mudah dalam MySql.

Atas ialah kandungan terperinci Pengedaran data MySql: bagaimana untuk melaksanakan mekanisme replikasi tuan-hamba. 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