Mysql – Trigger ile Veritabanı Taşınması / (Backup/Restore)

Merhaba,

Veritabanı olarak mysql kullanan yazılımların verilerini kendi kullandığımız veri tabanına almak istiyoruz.

Senaryo: Ama bir veri tabanı isim çakışması mevcut olduğundan dolayı bunu canias ta yapamadığınızı varsayalım.. Hayır hayır benim değil kuzenimin başına gelmiş (bkz: swf)

Gidilecek adımlar için;

  • mysql query browser da schemata sekmesinde sağ tık create new schema diyip farklı bi db ismi ile veritabanını oluşturuyoruz.


mysql11111

  • daha sonra verilerini almak istediğimiz (..test) database in backup ını alıyoruz


mysql22222.PNG

mysql adminstrator da sol üst yönetim sekmesinde görsel de gösterdiğim adımları izleyerek backup ınızı alıyorsunuz.

  • 3.adımda ismini değiştirdiğimiz veri tabanına alınan backup ı restore ediyoruz.


mysql33333

Restore butonu ile görsel de adım adım gösterildiği şekli ile test ten aldığımız veriyi qlty te aktarıyoruz.

Şuan için manuel bir replike işlemini tamamlamış bulunuyoruz.

Şimdi ise sırada, asıl veri tabanına yapılan insert leri her defasında bizim backup-restore işlemini gerçekleştirmemize gerek kalmadan kendisinin stabil halde bunu yapabilmesini sağlamakta.

Çok fazla bir tablonuz yoksa trigger ile çok rahat bir şekilde bunu gerçekleştirebilirsiniz.

test üzerindeki tablolara yazacağımız trigger lar ile veri aktarımını şu şekilde yapabiliriz ;

mysql4444

use test;

/* makina verisi test db sinden qlty db sine aktarılır */
CREATE TRIGGER copyMakina BEFORE INSERT ON test.makina
FOR EACH ROW
INSERT INTO qlty.makina(Model,Aciklama,KayitZamani)
VALUES(NEW.Model,NEW.Aciklama,NEW.KayitZamani);

yukarıdaki scirpte benzer scriptler hazırlayarak aynı server içindeki bir database den diğerine trigger ile verileri atabiliriz.

Insert trigger ındaki yeni veriler NEW anahtar sözcüğü ile geliyor,buradaki verileri yakalayıp SET ile manipüle edip gömebilirsiniz.

mysql5555

Son olarak test teki makina tablosuna bir veri insert ediyoruz ve use qlty ile veritabanını değiştirip qlty deki makina tablosuna o verinin eklendiğini de görüyoruz.

faydası olması dileğiyle..  🙂

Bir Cevap Yazın

Aşağıya bilgilerinizi girin veya oturum açmak için bir simgeye tıklayın:

WordPress.com Logosu

WordPress.com hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap /  Değiştir )

Twitter resmi

Twitter hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap /  Değiştir )

Facebook fotoğrafı

Facebook hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap /  Değiştir )

Connecting to %s