Prezantimi
Vendosni nyjen kryesore
Vendosni nyjen skllav
Prezantimi
Kur jeni duke drejtuar një uebsajt kritik, është e rëndësishme të siguroheni që të keni të paktën një server rezervë të tepërt. Kjo siguron që databaza juaj të sinkronizohet në kohë reale. MySQL i referohet sinkronizimit të bazës së të dhënave si përsëritje. Ky tutorial i shkurtër ofron udhëzime se si të konfiguroni një replikim të MySQL master-slave.
Vendosni nyjen kryesore
Ndrysho /etc/mysql/my.cnf
për të çaktivizuar lidhjen e IP-së.
Komentoni rreshtat e mëposhtëm:
bind-address = 127.0.0.1
skip-networking
Krijoni cilësime të reja për përsëritje duke ekzekutuar komandat e mëposhtme:
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
Rinisni serverin MySQL.
/etc/init.d/mysql restart
Krijoni një përdorues skllav në MySQL duke ekzekutuar komandat e mëposhtme në tastierën MySQL.
CREATE USER 'slave'@'SLAVE_SERVER_IP_ADDRESS' identified by 'YOUR_SLAVE_PASSWORD';
GRANT ALL ON *.* TO 'slave'@'SLAVE_SERVER_IP_ADDRESS';
FLUSH PRIVILEGES;
Tani, bllokoni hyrjen e shkrimit në bazën tuaj të të dhënave:
FLUSH TABLES WITH READ LOCK;
Merrni statusin e nyjës master:
SHOW MASTER STATUS;
Shënim: Shkruani vlerat e fushave "File" dhe "Position" pasi do të na duhet t'i referohemi më vonë për nyjen skllav.
Hapni një sesion tjetër SSH dhe hiqni bazën e të dhënave duke përdorur komandën e mëposhtme:
mysqldump -u MYSQL_USERNAME -pMYSQL_PASSWORD --databases YOUR_DATABASE_ONE YOUR_DATABASE_TWO > database.sql
Kthehuni në sesionin e mëparshëm SSH dhe lëshoni komandën e mëposhtme në tastierën MySQL për të zhbllokuar aksesin e shkrimit:
UNLOCK TABLES;
Transferoni atë të database.sql
krijuar në hapin e mëparshëm në nyjen skllav.
Vendosni nyjen skllav
Ndrysho /etc/mysql/my.cnf
për të çaktivizuar lidhjen e IP-së.
Komentoni rreshtat e mëposhtëm:
bind-address = 127.0.0.1
skip-networking
Krijoni cilësime të reja për përsëritje duke ekzekutuar komandën e mëposhtme:
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
Rinisni serverin MySQL.
/etc/init.d/mysql restart
Importo database.sql
krijuar nga nyja kryesore vetëm tani duke përdorur këtë komandë:
mysql -u MYSQL_USERNAME-pMYSQL-PASSWORD < database.sql
Tani, le të fillojmë përsëritjen. Hapni tastierën MySQL, ekzekutoni komandat e mëposhtme:
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;
Shënim: Vlera për MASTER_LOG_FILE
dhe MASTER_LOG_POS
është "File" dhe "Position" që kemi shkruar nga konfigurimi i nyjes kryesore.