Migration Sistemi
MüşavirFlow migration sistemi, eklenti güncellemelerinde veritabanı yapısının kontrollü şekilde güncellenmesini sağlar. Yeni tablolar, kolonlar, indeksler veya varsayılan ayarlar gerekiyorsa bu işlemler sürüm kontrollü migration akışıyla yürütülür.
Migration neden gerekir?
- Yeni modül için tablo eklemek.
- Mevcut tabloya yeni kolon eklemek.
- Veri yapısını yeni ürün davranışına uyarlamak.
- Varsayılan ayar veya rol/capability düzenini güncellemek.
Nasıl çalışır?
- Eklenti dosyaları güncellenir.
- MüşavirFlow kayıtlı veritabanı sürümünü kontrol eder.
- Yeni sürümde çalışması gereken migration varsa sırayla çalıştırılır.
- Başarılı işlemler migration geçmişine yazılır.
- Hata oluşursa işlem durdurulur ve kontrol gerekir.
Migration geçmişi
Migration geçmişi, hangi sürüm işlemlerinin ne zaman çalıştığını görmek için kullanılır. Güncelleme sonrası sorun yaşanırsa ilk bakılacak alanlardan biri migration geçmişidir.
Güncelleme sonrası kontrol
| Kontrol | Açıklama |
|---|---|
| DB sürümü | Beklenen veritabanı sürümü görünüyor mu? |
| Migration geçmişi | Hata veya yarım kalmış işlem var mı? |
| Yeni modül tabloları | Yeni modül ekranları veri okuyabiliyor mu? |
| Admin ekranları | Ghost Admin içinde kritik ekranlar açılıyor mu? |
| Frontend | Shortcode ve arşiv sayfaları doğru çalışıyor mu? |
Manuel müdahale
Migration işlemleri normalde otomatik çalışmalıdır. Manuel yeniden çalıştırma gerekiyorsa önce yedek alınmalı, sonra yalnız gerekli işlem dikkatle tetiklenmelidir. Aynı migration'ın tekrar çalışması beklenmeyen sonuç üretebileceği için işlem geçmişi kontrol edilmeden müdahale edilmemelidir.
Not: Migration sistemi kod güncellemesi ile veritabanı uyumunu sağlar. Dosya güncellendiği halde migration tamamlanmadıysa modüller eksik veya hatalı davranabilir.