Cara mengatur replikasi mysql di rhel, rocky dan almalinux

Cara mengatur replikasi mysql di rhel, rocky dan almalinux

Replikasi Data adalah proses menyalin data Anda di beberapa server untuk meningkatkan ketersediaan data dan meningkatkan keandalan dan kinerja aplikasi. Di dalam Mysql Replikasi, data disalin dari database dari server master ke node lain secara real-time untuk memastikan konsistensi data dan juga untuk menyediakan cadangan dan redundansi.

Dalam panduan ini, kami menunjukkan bagaimana Anda dapat mengatur Mysql (Master-Slave) Replikasi dalam distribusi berbasis RHEL seperti Centos, Fedora, Linux Rocky, Dan Almalinux.

Pengaturan Replikasi MySQL

Jadi, inilah kami Mysql Pengaturan Lab Replikasi.

Mysql Master - 10.128.0.14 mysql slave - 10.128.15.211 

Mari kita mulai…

Langkah 1: Instal MySQL di Master and Slave Server

Kami akan memulai dengan menginstal Mysql database di kedua menguasai Dan budak server.

$ sudo dnf instal @mysql 
Instal MySQL di Linux Rocky

Setelah instalasi selesai, buat titik untuk memulai server database.

$ sudo systemctl mulai mysqld 

Kemudian aktifkan untuk mulai sistem startup atau saat reboot.

$ sudo systemctl mengaktifkan mysqld 

Setelah itu, konfirmasikan bahwa Mysql Database Server berjalan seperti yang ditunjukkan:

$ sudo Systemctl status mysqld 
Periksa status berjalan mysql

Langkah 2: Amankan MySQL di Master and Slave Server

Langkah selanjutnya adalah mengamankan Mysql database di kedua menguasai Dan budak server. Ini karena pengaturan default tidak aman dan menyajikan beberapa celah yang dapat dengan mudah dieksploitasi oleh peretas.

Jadi, untuk mengeraskan mysql, jalankan perintah:

$ sudo mysql_secure_installation 

Pertama, Anda akan diminta untuk mengatur Mysql kata sandi root. Pastikan untuk memberikan kata sandi root yang kuat, lebih disukai dengan lebih dari 8 karakter yang merupakan campuran dari karakter huruf besar, huruf kecil, khusus dan numerik.

Amankan mysql di rocky linux

Untuk petunjuk yang tersisa, ketik 'Y' Untuk mengubah server database ke pengaturan yang disarankan.

Konfirmasi Pengaturan MySQL

Setelah Anda selesai menginstal dan mengeras Mysql Pada simpul master dan slave, selanjutnya adalah mengonfigurasi node master.

Langkah 3: Mengkonfigurasi master node (server)

Langkah selanjutnya adalah mengonfigurasi Menguasai simpul dan berikan budak Akses simpul ke sana. Pertama, kita perlu mengedit MySQL-Server.CNF file konfigurasi.

$ sudo vim /etc /my.CNF.D/MySQL-Server.CNF 

Tambahkan baris berikut di bawah [mysqld] bagian.

Bind-address = 10.128.0.14 server-id = 1 log_bin = mysql-bin 

Setelah selesai, simpan perubahan dan keluar. Lalu restart Mysql server.

$ sudo sysemctl restart mysqld 

Selanjutnya, masuk ke Mysql kerang.

$ sudo mysql -u root -p 

Jalankan perintah berikut untuk membuat pengguna database yang akan digunakan untuk mengikat master dan slave untuk replikasi.

mysql> buat pengguna 'replika'@'10.128.15.211 'diidentifikasi oleh' [email dilindungi] '; mysql> hibah budak di *.*Ke 'replika'@'10.128.15.211 '; 
Buat Pengguna Replikasi Database

Menerapkan perubahan dan keluar Mysql server.

mysql> hak istimewa flush; mysql> keluar; 

Verifikasi status master.

mysql> tunjukkan status master \ g 
Verifikasi status mysql

Perhatikan nama file dan posisinya. Anda akan membutuhkan ini nanti saat menyiapkan budak untuk replikasi. Dalam kasus kami, kami memiliki nama file mysql-bin.000001 dan posisi 1232.

Langkah 4: Konfigurasikan node slave (server)

Sekarang, kembali ke simpul budak. Sekali lagi, edit MySQL-Server.CNF file konfigurasi.

$ sudo vim /etc /my.CNF.D/MySQL-Server.CNF 

Seperti sebelumnya, tempel garis -garis ini di bawah [mysqld] bagian. Ubah alamat IP agar sesuai dengan IP budak. Juga, tetapkan berbeda server-id. Di sini kami telah menetapkan nilai 2.

Bind-address = 10.128.15.211 server-id = 2 log_bin = mysql-bin 

Simpan perubahan dan keluar dari file. Kemudian restart server database.

$ sudo systemctl restart mysqld 

Untuk mengonfigurasi Budak node untuk direplikasi dari node master, masuk ke server mysql budak.

$ sudo mysql -u root -p 

Pertama dan terpenting, hentikan utas replikasi:

mysql> stop slave; 
Hentikan budak mysql

Kemudian jalankan perintah berikut untuk mengkonfigurasi node slave untuk mereplikasi database dari master.

mysql> ubah master menjadi master_host = "10.128.0.14 ", master_user =" replika ", master_password = '[email dilindungi]', master_log_file =" mysql-bin.000001 ", master_log_pos = 1232; 

Perhatikan bahwa Master_log_file Dan Master_log_pos Bendera sesuai dengan file dan Posisi nilai dari Menguasai simpul di akhir langkah 1.

Itu Master_host, Master_user, Dan PASSWORD MASTER sesuai dengan alamat IP master, pengguna replikasi, dan kata sandi pengguna replikasi.

Konfigurasikan replikasi mysql slave

Kemudian mulailah utas replikasi budak:

mysql> Mulai budak; 
Mulailah budak mysql

Langkah 4: Menguji Replikasi Master-Slave MySQL

Sekarang, untuk menguji apakah replikasi antara master dan slave node berfungsi, masuk ke server database MySQL pada node master:

$ sudo mysql -u root -p 

Buat database tes. Di sini, database pengujian kami dipanggil replikasi_db.

mysql> buat database replication_db;
Verifikasi keberadaan database.
MySQL> Tampilkan basis data; 
Buat Database di MySQL Master

Sekarang, pergilah ke node slave, masuk ke server MySQL dan konfirmasikan bahwa replikasi_db Database hadir. Dari output di bawah ini, kita dapat melihat bahwa database ada. Ini adalah konfirmasi bahwa replikasi telah terjadi dari master ke node budak.

MySQL> Tampilkan basis data; 
Periksa replikasi master-slave mysql

Dan hanya itu, kami telah berhasil menunjukkan bagaimana Anda dapat mengatur a Mysql Model replikasi master-slave yang dapat mereplikasi database dari node master ke node slave.