2- Slave Konfigürasyonu
Slave de öncelikle exampledb veritabanını oluşturmalıyız:
mysql -u root -p
Enter password:
CREATE DATABASE exampledb;
quit;
Master da bulunan exampledb nin dökümünü alıp slave e transfer ettiyseniz, şimdi slave de yeni oluşturduğunuz exampledb ye SQL dökümünü aktarmanın tam zamanı.
mysql -u root -p<password> exampledb < /path/to/exampledb.sql (<password> yerine kendi şirfenizi girin! Önemli: -p ile <password> arasında boşluk olmamalı!)
LOAD DATA FROM MASTER kullamak istiyorsanız şimdilik burada gerçekleştireceğiniz birşye yok.
Şimdi slave deki MySQL e kendisinin slave olduğunu, master in 192.168.0.100 ve master veritabanı olarak exampledb yi aramasını söyleyeceğiz. Bunun için aşağıdaki satırları
/etc/mysql/my.conf dosyasına ekleyelim:
server-id=2
master-host=192.168.0.100
master-user=slave_user
master-password=secret
master-connect-retry=60
replicate-do-db=exampledb
ve sonra MySQL i yeniden başlatın:
/etc/init.d/mysql restart
Master exampledb yi SQL dökümü yardımı ile aktarmadıysanız ve LOAD DATA FROM MASTER yöntemi ile devam etmek istiyorsanız, master exampledb den verileri almanın tam zamanı:
mysql -u root -p
Enter password:
LOAD DATA FROM MASTER;
quit;
PhpMyAdmin kullanıyorsanız master exampledb de bulunan tüm tablo ve verilerin slave de bulunan exampledb bulunup bulunmadığını kontrol edebilirsiniz.
Son olarak şunu yapmalıyız:
mysql -u root -p
Enter Password:
SLAVE STOP;
Sonraki yazacağımız komut satırındaki komut değerlerini doğru bir biçimde yazmalısınız:
CHANGE MASTER TO MASTER_HOST=’192.168.0.100′, MASTER_USER=’slave_user’, MASTER_PASSWORD=’<some_password>’, MASTER_LOG_FILE=’mysql-bin.006′, MASTER_LOG_POS=183;
-
MASTER_HOST master in IP adresi veya sunucu adıdır (örneğimizde bu 192.168.0.100 dir).
-
MASTER_USER master üzerinde Replication haklarını tanımladığımız kullanıcıdır.
-
MASTER_PASSWORD master da bulunan MASTER_USER in şifresidir
-
MASTER_LOG_FILE master üzerinde SHOW MASTER STATUS komutu çalıştırıldığında MySQL tarafından verilen dosya
-
MASTER_LOG_POS master üzerinde SHOW MASTER STATUS komutu çalıştırıldığında MySQL tarafından verilen pozisyon
Şimdi komut satırındayken slave i çalıştıralım:
START SLAVE;
quit;
Hepsi bu kadar! Master daki exampledb güncellendiğinde bütün değişiklikler slave de bulunan exampledb ye uygulanacak. Test edin!