Migrasyon Nedir?

İngilizce: Database Migration

Veritabanı migrasyonu, tablo, kolon, indeks ve veri dönüşümü değişikliklerini sürümlü dosyalarla kontrollü şekilde uygular.

Migrasyon Nedir?

Veritabanı migrasyonu, uygulamanın ihtiyaç duyduğu şema değişikliklerini kodla birlikte sürümlendirme yöntemidir. Yeni tablo eklemek, kolon adını değiştirmek, indeks oluşturmak veya mevcut veriyi dönüştürmek migrasyon dosyasıyla yönetilebilir.

Nasıl Çalışır?

Her migrasyon dosyası belirli bir sırayla çalışır ve çoğu araç veritabanında hangi migrasyonların uygulandığını izleyen bir tablo tutar. Geliştirici değişikliği yerelde test eder, dosyayı versiyon kontrolüne ekler ve dağıtım sırasında aynı adımlar test, staging ve üretim ortamında uygulanır. Bazı sistemlerde geri alma için ayrı down adımı da yazılır.

Dikkat Edilecekler

Büyük tablolarda kolon değiştirmek kilitlenme yaratabilir. Veri doldurma işlemleri uzun sürebilir. Üretimde güvenli migrasyon için geriye uyumlu şema değişikliği, aşamalı yayın, yedekleme, izleme ve gerekirse arka plan veri taşıma planı gerekir.

ORM araçları migrasyon üretmeyi kolaylaştırabilir, ancak karmaşık performans veya veri dönüşümü işlerinde doğrudan SQL yazmak daha kontrollü olabilir.