Android

Kuinka konfiguroida mysql (mariadb) master

What is Database & SQL?

What is Database & SQL?

Sisällysluettelo:

Anonim

MySQL-replikointi on prosessi, jolla tietoja kopioidaan yhdestä tietokantapalvelimesta (isäntä) yhdelle tai useammalle palvelimelle (orja).

MySQL tukee useita replikaatiotopologioita, joissa Master / Slave-topologia on yksi tunnetuimmista topologioista, jossa yksi tietokantapalvelin toimii isäntänä, kun taas yksi tai useampi palvelin toimii orjana. Oletusarvon mukaan replikointi on asynkronista, jossa isäntä lähettää tapahtumia, jotka kuvaavat tietokannan muutoksia sen binaarilokiin, ja orjat pyytävät tapahtumia, kun ne ovat valmiita.

Tässä oppaassa näytämme, kuinka voit määrittää MariaDB Master / Slave -replikaation yhdellä isäntä- ja yhdellä orjapalvelimella Debian 10: ssä. MariaDB on MySQL: n oletusasennus Debianissa. Samat vaiheet koskevat Oracle MySQL: tä.

Tämäntyyppinen replikaatiotopologia soveltuu parhaiten luettujen replikoiden käyttöön lukemiseen, reaaliaikaisten tietokantojen varmuuskopiointiin katastrofien palautusta varten ja analysointityöhön.

edellytykset

Oletamme, että sinulla on kaksi palvelinta, jotka käyttävät Debian 10: tä, jotka kommunikoivat keskenään yksityisen verkon kautta. Jos palveluntarjoajasi ei tue yksityisiä IP-osoitteita, voit käyttää julkisia IP-osoitteita ja määrittää palomuurisi sallimaan liikenteen portissa 3306 vain luotettavista lähteistä.

Tässä esimerkissä käytetyillä palvelimilla on seuraavat IP-osoitteet:

Master IP: 10.10.8.12 Slave IP: 10.10.8.164

MariaDB: n asentaminen

Oletus Debian 10 -rekisterit sisältävät MariaDB-version 10.3. On parasta asentaa sama MariaDB-versio molemmille palvelimille mahdollisten ongelmien välttämiseksi.

Asenna MariaDB sekä isäntään että orjaan antamalla seuraavat komennot:

sudo apt-get update sudo apt-get install mariadb-server

Pääpalvelimen määrittäminen

Ensimmäinen askel on pääpalvelimen määrittäminen. Teemme seuraavat muutokset:

  • Aseta MariaDB-palvelin kuuntelemaan yksityistä IP: tä. Aseta yksilöllinen palvelimen tunnus.Anna binaarinen kirjaaminen.

Avaa MariaDB-asetustiedosto ja poista komento tai aseta seuraavat rivit:

sudo nano /etc/mysql/mariadb.conf.d/50-server.cnf Master: /etc/mysql/mariadb.conf.d/50-server.cnf

bind-address = 10.10.8.12 server-id = 1 log_bin = /var/log/mysql/mysql-bin.log

Kun olet valmis, tallenna tiedosto ja käynnistä MySQL-palvelu uudelleen, jotta muutokset tulevat voimaan:

sudo systemctl restart mariadb

Seuraava vaihe on luoda uusi replikointikäyttäjä. Kirjaudu sisään MariaDB-palvelimeen pääkäyttäjänä:

sudo mysql

Suorita seuraavat SQL-kyselyt luodaksesi käyttäjän nimeltään replica ja myöntämällä käyttäjälle REPLICATION SLAVE -oikeudet:

CREATE USER 'replica'@'10.10.8.164' IDENTIFIED BY 'replica_password';

GRANT REPLICATION SLAVE ON *.* TO 'replica'@'10.10.8.164'; Varmista, että vaihdat IP: n slave IP-osoitteellasi. Voit nimetä käyttäjän haluamallasi tavalla.

Suorita vielä MySQL-kehotteen sisällä seuraava komento, joka tulostaa binaaritiedoston nimen ja sijainnin.

SHOW MASTER STATUS\G

*************************** 1. row *************************** File: mysql-bin.000001 Position: 328 Binlog_Do_DB: Binlog_Ignore_DB: 1 row in set (0.001 sec)

Ota muistiin tiedostonimi, 'mysql-bin.000001' ja sijainti '328'. Nämä arvot ovat välttämättömiä orjapalvelinta määritettäessä, ja ne todennäköisesti eroavat palvelimellasi.

Slave-palvelimen määrittäminen

Teemme samat muutokset orjapalvelimella kuin isännässä:

  • Aseta MySQL-palvelin kuuntelemaan yksityisellä IP: llä. Aseta yksilöllinen palvelimen tunnus.Anna binaarinen kirjaaminen.

Avaa MariaDB-asetustiedosto ja muokkaa seuraavia rivejä:

sudo nano /etc/mysql/mariadb.conf.d/50-server.cnf orja: /etc/mysql/mariadb.conf.d/50-server.cnf

bind-address = 10.10.8.164 server-id = 2 log_bin = /var/log/mysql/mysql-bin.log

Käynnistä MariaDB-palvelu uudelleen:

sudo systemctl restart mariadb

Seuraava vaihe on määrittää parametrit, joita orjapalvelin käyttää yhteyden muodostamiseen isäntäpalvelimeen. Kirjaudu MariaDB-kuoreen:

sudo mysql

Aloita pysäyttämällä orjalangat:

STOP SLAVE;

Suorita seuraava kysely määrittääksesi isäntä / orja-replikoinnin:

CHANGE MASTER TO MASTER_HOST='10.10.8.12', MASTER_USER='replica', MASTER_PASSWORD='replica_password', MASTER_LOG_FILE='mysql-bin.000001', MASTER_LOG_POS=328;

Varmista, että käytät oikeaa IP-osoitetta, käyttäjänimeä ja salasanaa. Lokitiedoston nimen ja sijainnin on oltava sama kuin pääpalvelimelta saamasi arvot.

Kun olet valmis, käynnistä orjalangat.

START SLAVE;

Testaa kokoonpano

Tässä vaiheessa sinulla pitäisi olla toimivat Master / Slave-replikointiasetukset.

Luo uusi tietokanta pääpalvelimelle varmistaaksesi, että kaikki on asennettu oikein:

sudo mysql

CREATE DATABASE replicatest;

Kirjaudu MySQL-palvelimen slaveen:

sudo mysql

Suorita seuraava komento luetteloidaksesi kaikki tietokannat:

SHOW DATABASES;

Huomaat, että pääpalvelimella luoma tietokanta kopioidaan orjassa:

+--------------------+ | Database | +--------------------+ | information_schema | | mysql | | performance_schema | | replicatest | | sys | +--------------------+ 5 rows in set (0.00 sec)

johtopäätös

Tässä opetusohjelmassa olemme osoittaneet, että luot MariaDB Master / Slave -replikaation Debian 10: lle.

Jätä kommentti, jos sinulla on kysyttävää.

debian mysql mariadb