GNU/Linux >> Linux Esercitazione >  >> Linux

Come impostare la replica MySQL Master Slave

Introduzione

Nel cloud computing, la replica dei dati master-slave si riferisce alla memorizzazione delle stesse informazioni su più server. Un server controlla il gruppo e gli altri dispositivi gestiscono il lavoro all'interno dello stesso nodo.

La replica diventa necessaria:

  • Quando un'azienda ha bisogno di un backup quotidiano regolare in grado di ripristinare il database MySQL principale in caso di malfunzionamento dello storage.
  • Ovunque le informazioni debbano essere archiviate, esaminate e modificate da più persone, su più computer. Se un membro del gruppo identifica la necessità di una modifica, deve rivolgersi al master designato del nodo.

Questa guida ti guiderà attraverso come impostare la replica master-slave in MySQL.

Prerequisiti

  • Un sistema basato su Linux, come CentOS
  • Un account utente con sudo privilegi
  • Un programma di installazione di pacchetti come yum o apt , generalmente incluso per impostazione predefinita
  • L'IP privato del server cloud (per evitare addebiti per la larghezza di banda sull'IP pubblico durante la configurazione)

Passaggi per la configurazione della replica del database master-slave in MySQL

Yum (Yellowdog Updater, Modified) è lo strumento di gestione dei pacchetti per i sistemi Linux RedHat Package Manager. In .deb pacchetti, lo yum strumento viene generalmente sostituito con apt attrezzo. Pertanto, in un dato comando apt-get di solito può sostituire yum .

Ad esempio, un comando di installazione può essere yum install [package_name] o apt-get install [package_name] per lo stesso risultato. Questo articolo presuppone che tu stia utilizzando una distribuzione Linux basata su RPM. Quindi, yum vengono utilizzati i comandi.

Il database MySQL principale viene eseguito in modalità di lettura-scrittura. Nel frattempo, il server slave viene eseguito in sola lettura. Ora, alla replica.

Passaggio 1:configurare il database MySQL per la replica

Usa il mysqldump comando per eseguire un dump e un ripristino delle informazioni nel database slave. Questo comando scarica i dati in un file, li trasferisce e li ripristina sul nodo slave.

Fase 2:crea 2 server cloud separati

In questo passaggio, l'utente con privilegi deve accedere al controllo cloud. Con CentOS, questo è possibile tramite l'immagine di base di CentOS 6.

Crea due server cloud Linux con la RAM appropriata e assegna loro nomi distinti.

Fase 3:aggiorna tutti i pacchetti software alla versione corrente

Gli utenti e gli amministratori di sistema possono aggiornare tutti i pacchetti software su un sistema Linux basato su RPM con il comando seguente:

yum update

Fase 4:installa MySQL

Per i sistemi Linux basati su RedHat Package Manager, installa il pacchetto del server MySQL su entrambi i server cloud con il comando:

yum install mysql-server

Imposta il servizio in modo che venga eseguito ogni volta che il sistema si avvia con il comando:

chkconfig mysqld on

Fase 5:avvia MySQL

Ora, scopri se MySQL è stato installato correttamente. Se lo fosse, dovresti essere in grado di avviare il servizio con il comando:

service mysqld start

Passaggio 6:imposta la password di root del server MySQL

È una buona idea impostare una password utente amministrativa per MySQL. Per impostare la password, esegui lo script per un'installazione sicura che accompagna il pacchetto MySQL, rispondendo con Y a tutti i prompt Y/n.

Oppure, usa /usr/bin/mysqladmin -u root password seguito da uno spazio e dalla tua nuova password; e /usr/bin/mysqladmin -u root -h web01 password seguito da uno spazio e, ancora, dalla tua nuova password.

Passaggio 7:configurare il firewall per l'accesso al database

Applicazione della regola TCP Port 3306 aggiunge un criterio firewall che consente il traffico sulla porta 3306. Questa regola consente una corretta comunicazione tra i dispositivi.

Per salvare la configurazione del firewall, utilizzare il comando:

service iptables save

Fai attenzione ogni volta che apri le porte per assicurarti di evitare hack.

Fase 8:Configura il server per la replica

Ogni server slave richiede un modo per connettersi al server master. Per stabilire una connessione, sono necessari un nome utente e una password MySQL. Ciò richiede la configurazione di un account utente MySQL sul server master.

Si consiglia di creare un account dedicato per la replica. Per questa funzione, concedi a qualsiasi account il privilegio di replica slave. Puoi creare lo stesso account o account diversi per ogni slave. Puoi sempre trovare il nome utente e la password dell'account in testo normale nel repository principale.

Per configurare un nuovo account utente chiamato replica e consentirgli di connettersi a fini di replica da qualsiasi host su tuosito.com dominio, esegui questo comando sul server principale:

mysql> CREATE USER 'replication'@'%.yoursite.com' IDENTIFIED BY [space followed by password]; then: mysql> GRANT REPLICATION SLAVE ON *.* TO 'replication'@'%.yoursite.com';

Passaggio 9:assicurati che i dati sui tuoi server corrispondano

Duplica i dati tramite il dump dal master al server slave.

Le tabelle di risciacquo devono essere impostate con un blocco di lettura. Il database del server principale non deve prendere tutte le nuove modifiche durante questo passaggio. Se sono presenti informazioni sul server master da coordinare con i server slave prima dell'avvio del processo di replica, eseguire le seguenti azioni:

  • Interrompi l'elaborazione di qualsiasi comando sul server principale.
  • Copiare il nome del file e le coordinate correnti per il server master all'interno del suo registro binario (vedere il passaggio 10, di seguito). Ciò sarà necessario in seguito al completamento della configurazione della replica.
  • Prima di consentire al tuo server principale di continuare a seguire i comandi, scarica i suoi dati.

Esegui attentamente tutte queste azioni per assicurarti che il dump dei dati corrisponda ai dati correnti del server master. In caso contrario, i database slave non corrisponderanno o saranno danneggiati.

Fase 10:scatta un'istantanea del database principale

Mentre esegui la seguente azione, tieni presente che solo un'istantanea del database master è tutto ciò che serve per configurare più server slave.

Se devi ancora configurare server-id e avviare un registro binario sul server master, è necessario arrestare il server. Puoi fare uno snapshot dei database ora.

Porta i file di dati nella directory del server slave:

shell> tar xvf dbdump.tar

Se necessario, stabilisci la proprietà e le autorizzazioni per i file. Potrebbe essere necessario consentire l'accesso al server slave e la possibilità di apportare modifiche. Avvia lo slave con --skip-slave-start per evitare di iniziare la replica.

Configura il tuo server slave con il nome host e le credenziali di accesso del server master. Utilizzare le coordinate di replica del server master per il database slave. Stai indirizzando lo slave al punto in cui inizia la replica, utilizzando il file di registro binario e la posizione.

Per un server master configurato, puoi utilizzare mysqldump per scattare una foto.

Ora puoi aggiornare la configurazione dello slave. Ancora una volta, assicurati di avviare lo slave con --skip-slave-start per evitare di iniziare la replica.

Importa il dump con il comando:

shell> mysql < fulldb.dump

Fase 11:inizia i thread slave

Per vedere subito gli aggiornamenti sul server slave usa:

mysql> START SLAVE;

Linux
  1. Come configurare MySQL Cluster su Ubuntu

  2. Come configurare MariaDB Master Slave Replication su Ubuntu 18.04

  3. Come configurare l'accesso remoto a Docker Daemon

  4. Configura la replica della replica sorgente di MySQL

  5. Come configurare un database slave MySQL

Come impostare la replica MySQL in RHEL/Centos

Come configurare NordVPN su Ubuntu

Come impostare o modificare il fuso orario su Debian 11

Come configurare l'accesso MySQL remoto su cPanel?

Come configurare la replica Master-Slave MariaDB su CentOS 7

Come impostare la replica MySQL Master-Slave su RHEL 7?