start' >&2 ;; esac

Додај mysqld_multi услуга на подразумевану runlevels са следећом командом:

update-rc.d mysqld_multi defaults

Поново покрените машину и проверите да ли су обе инстанце МиСКЛ покренуте помоћу следеће наредбе:

mysqld_multi report

Постављање репликације мастер-славе

Сада, када имамо две МиСКЛ инстанце које се изводе на истој машини, поставићемо прву инстанцу као мастер, а другу као славе.

Један део конфигурације је већ изведен у поглављу „Постављање мисклд_мулти“. Једина преостала промена у my.cnf датотека треба поставити бинарно пријављивање на мастер. Да бисте то урадили, уредите my.cnf датотека са следећим изменама и допунама у [mysqld1] група:

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

Поново покрените главну инстанцу МиСКЛ да би ове промене ступиле на снагу:

mysqld_multi stop 1 mysqld_multi start 1

Да би се подређени повезао с главним рачунаром са исправним привилегијама репликације, на мастеру треба створити новог корисника. Повежите се са главном инстанцом користећи МиСКЛ клијент са одговарајућим хостом и портом:

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

Направите новог корисника за репликацију:

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

Излаз из МиСКЛ клијента.

Извршите следећу наредбу да бисте креирали думп главних података:

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

Овде користимо опцију --master-data=2 како би имали коментар који садржи CHANGE MASTER изјава унутар датотеке резервне копије. Тај коментар указује на координате репликације у време израде резервне копије, а те координате ће нам бити потребне касније за ажурирање главних података у помоћној инстанци. Ево примера тог коментара:

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

Увезите депонију коју сте креирали у претходном кораку у помоћну инстанцу:

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

Коначно, да би се помоћна инстанца повезала с главном инстанцом, главне информације о помоћној јединици морају се ажурирати одговарајућим параметрима везе.

Повежите се са славе инстанцом користећи МиСКЛ клијент са одговарајућим хостом и портом:

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

Извршите следећу наредбу да бисте ажурирали главне информације (узмите координате репликације из датотеке думп-а replicationdump.sql, како је горе објашњено):

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;

Извршите следећу наредбу да бисте покренули славе:

mysql> START SLAVE;

Извршите следећу наредбу да бисте проверили да ли је репликација покренута:

mysql> SHOW SLAVE STATUS G

Честитам. Ваша МиСКЛ репликација мастер-славе на истој машини је сада успешно постављена.

МиСКЛ репликација мастер-славе

Упаковати

Имати мастер-славе репликацију конфигурисану у вашем развојном окружењу корисно је ако вам је потребна за решење за смањење у производном окружењу. На овај начин, такође ћете имати одвојене изворе података конфигурисане за операције писања и читања, тако да можете локално тестирати да ли све функционише како се очекивало пре даље примене.

Поред тога, можда ћете желети да на истој машини буде конфигурисано неколико инстанци славе за тестирање уравнотеживача оптерећења који дистрибуира операције читања на неколико помоћних уређаја. У том случају, можете користити овај исти приручник за подешавање других подређених инстанци понављањем свих истих корака.