Увод
Подесите главни чвор
Подесите славе чвор
Увод
Када користите критичну веб локацију, важно је да се уверите да имате најмање један резервни сервер. Ово осигурава да се ваша база података синхронизује у реалном времену. МиСКЛ означава синхронизацију базе података као репликацију. Овај кратки водич пружа упутства о томе како да подесите мастер-славе МиСКЛ репликацију.
Подесите главни чвор
Уредите /etc/mysql/my.cnfда бисте онемогућили повезивање ИП-а.
Прокоментаришите следеће редове:
bind-address = 127.0.0.1
skip-networking
Креирајте нова подешавања за репликацију тако што ћете покренути следеће команде:
cat >/etc/mysql/conf.d/replication.cnf <<EOF
[mysqld]
server-id = 100
log_bin = /var/log/mysql/mysql-bin.log
binlog-do-db = YOUR_DATABASE_ONE
binlog-do-db = YOUR_DATABASE_TWO
EOF
Поново покрените МиСКЛ сервер.
/etc/init.d/mysql restart
Креирајте подређеног корисника у МиСКЛ тако што ћете покренути следеће команде у МиСКЛ конзоли.
CREATE USER 'slave'@'SLAVE_SERVER_IP_ADDRESS' identified by 'YOUR_SLAVE_PASSWORD';
GRANT ALL ON *.* TO 'slave'@'SLAVE_SERVER_IP_ADDRESS';
FLUSH PRIVILEGES;
Сада закључајте приступ писању вашој бази података:
FLUSH TABLES WITH READ LOCK;
Добијте статус главног чвора:
SHOW MASTER STATUS;
Напомена: Запишите вредности поља „Филе“ и „Поситион“ јер ћемо касније морати да их референцирамо за подређени чвор.
Отворите другу ССХ сесију и избаците своју базу података користећи следећу команду:
mysqldump -u MYSQL_USERNAME -pMYSQL_PASSWORD --databases YOUR_DATABASE_ONE YOUR_DATABASE_TWO > database.sql
Вратите се на претходну ССХ сесију и издајте следећу команду у МиСКЛ конзоли да бисте откључали приступ писању:
UNLOCK TABLES;
Пренесите database.sqlкреирано у претходном кораку на славе чвор.
Подесите славе чвор
Уредите /etc/mysql/my.cnfда бисте онемогућили повезивање ИП-а.
Прокоментаришите следеће редове:
bind-address = 127.0.0.1
skip-networking
Креирајте нова подешавања за репликацију покретањем следеће команде:
cat >/etc/mysql/conf.d/replication.cnf <<EOF
[mysqld]
server-id = 101
log_bin = /var/log/mysql/mysql-bin.log
binlog-do-db = YOUR_DATABASE_ONE
binlog-do-db = YOUR_DATABASE_TWO
EOF
Поново покрените МиСКЛ сервер.
/etc/init.d/mysql restart
Увези database.sqlкреиран из главног чвора управо сада помоћу ове команде:
mysql -u MYSQL_USERNAME-pMYSQL-PASSWORD < database.sql
Сада, хајде да започнемо репликацију. Отворите МиСКЛ конзолу, покрените следеће команде:
SLAVE STOP;
CHANGE MASTER TO MASTER_HOST='MASTER_SERVER_IP_ADDRESS', MASTER_USER='slave', MASTER_PASSWORD='YOUR_SLAVE_PASSWORD', MASTER_LOG_FILE='FILE_VALUE_FROM_MASTER', MASTER_LOG_POS=POSITION_VALUE_FROM_MASTER;
SLAVE START;
Напомена: Вредност за MASTER_LOG_FILEи MASTER_LOG_POSје „Датотека“ и „Позиција“ које смо записали из подешавања главног чвора.