start' >&2 ;; esac

Lisää mysqld_multi palvelu oletusarvoon runlevels seuraavalla komennolla:

update-rc.d mysqld_multi defaults

Käynnistä kone uudelleen ja tarkista, että molemmat MySQL-ilmentymät ovat käynnissä, käyttämällä seuraavaa komentoa:

mysqld_multi report

Määritä isäntä-orja-replikointi

Nyt kun meillä on kaksi MySQL-esiintymää käynnissä samalla koneella, asetamme ensimmäisen esiintymän isäntänä ja toisen orjana.

Yksi osa kokoonpanosta suoritettiin jo luvussa “mysqld_multi-asetusten määrittäminen”. Ainoa jäljellä oleva muutos my.cnf tiedosto on asetettava binäärinen kirjaaminen päällikölle. Voit tehdä tämän muokkaamalla my.cnf tiedosto sisältää seuraavat muutokset ja lisäykset [mysqld1] ryhmä:

log_bin = /var/log/mysql/mysql-bin.log innodb_flush_log_at_trx_commit = 1 sync_binlog = 1 binlog-format = ROW

Käynnistä MySQL-isäntäesiintymä uudelleen, jotta nämä muutokset tulevat voimaan:

mysqld_multi stop 1 mysqld_multi start 1

Jotta orja voisi muodostaa yhteyden isäntään oikeilla replikointioikeuksilla, isäntälaitteeseen tulisi luoda uusi käyttäjä. Muodosta yhteys isäntäinstanssiin käyttämällä MySQL-asiakasta sopivalla isännällä ja portilla:

mysql -uroot -p --host=127.0.0.1 --port=3306

Luo uusi käyttäjä replikointia varten:

mysql> CREATE USER 'replication'@'%' IDENTIFIED BY 'replication'; mysql> GRANT REPLICATION SLAVE ON *.* TO 'replication'@'%';

Poistu MySQL-työasemasta.

Suorita seuraava komento perustietojen luomiseksi:

mysqldump -uroot -p --host=127.0.0.1 --port=3306 --all-databases --master-data=2 > replicationdump.sql

Tässä käytämme vaihtoehtoa --master-data=2 saadaksesi kommentin, joka sisältää CHANGE MASTER varmuuskopiotiedoston sisällä. Tämä kommentti ilmaisee replikointikoordinaatit varmuuskopioinnin aikana, ja tarvitsemme näitä koordinaatteja myöhemmin isäntätietojen päivittämiseksi orja-ilmentymässä. Tässä on esimerkki tästä kommentista:

käännä c++-tiedosto
-- -- Position to start replication or point-in-time recovery from -- -- CHANGE MASTER TO MASTER_LOG_FILE='mysql-bin.000001', MASTER_LOG_POS=349;

Tuo edellisessä vaiheessa luomasi kaatopaikka orja-ilmentymään:

mysql -uroot -p --host=127.0.0.1 --port=3307

Lopuksi, jotta orja-ilmentymä voisi muodostaa yhteyden isäntäinstanssiin, orjan isäntätiedot on päivitettävä sopivilla yhteysparametreilla.

Muodosta yhteys orja-ilmentymään käyttämällä MySQL-asiakasta asianmukaisen isännän ja portin kanssa:

mysql -uroot -p --host=127.0.0.1 --port=3307

Suorita seuraava komento päivittääksesi päätiedot (ota replikointikoordinaatit dump-tiedostosta replicationdump.sql, kuten yllä on selitetty):

mysql> CHANGE MASTER TO -> MASTER_HOST='127.0.0.1', -> MASTER_USER='replication', -> MASTER_PASSWORD='replication', -> MASTER_LOG_FILE='mysql-bin.000001', -> MASTER_LOG_POS=349;

Suorita seuraava komento orjan käynnistämiseksi:

mysql> START SLAVE;

Suorita seuraava komento varmistaaksesi, että replikointi on käynnissä:

mysql> SHOW SLAVE STATUS G

Onnittelut. MySQL-isäntä-orja-replikaatio samalla koneella on nyt onnistuneesti määritetty.

MySQL-isäntä-orja-replikointi

Paketoida

Master-slave-replikoinnin määrittäminen kehitysympäristössä on hyödyllistä, jos tarvitset sitä tuotantoympäristön laajennettavaan ratkaisuun. Tällä tavalla sinulla on myös erilliset tietolähteet, jotka on määritetty kirjoitus- ja lukutoimintoja varten, jotta voit testata paikallisesti, että kaikki toimii odotetusti ennen uutta käyttöönottoa.

Lisäksi saatat haluta määrittää useita orja-ilmentymiä samaan koneeseen testaamaan kuormituksen tasapainotinta, joka jakaa lukutoiminnot useille orjille. Siinä tapauksessa voit käyttää tätä samaa opasta muiden orja-ilmentymien määrittämiseen toistamalla kaikki samat vaiheet.