Veritabanı Migration Kalıpları
Üretim sistemleri için güvenli, geri alınabilir veritabanı şema değişiklikleri.
Ne Zaman Aktifleştirmeli
- Veritabanı tabloları oluştururken veya değiştirirken
- Sütun veya indeks eklerken/kaldırırken
- Veri migration'ları çalıştırırken (backfill, dönüştürme)
- Sıfır kesinti şema değişiklikleri planlarken
- Yeni bir proje için migration araçları kurarken
Temel İlkeler
- Her değişiklik bir migration'dır — üretim veritabanlarını asla manuel olarak değiştirmeyin
- Migration'lar üretimde sadece ileri — rollback'ler yeni forward migration'lar kullanır
- Şema ve veri migration'ları ayrıdır — tek migration'da DDL ve DML'yi asla karıştırmayın
- Migration'ları üretim boyutundaki veriye karşı test edin — 100 satırda çalışan migration 10M'de kilitlenebilir
- Migration'lar üretimde çalıştıktan sonra değişmezdir — üretimde çalışan migration'ı asla düzenlemeyin
Migration Güvenlik Kontrol Listesi
Herhangi bir migration uygulamadan önce:
- Migration UP ve DOWN'a sahip (veya açıkça geri alınamaz olarak işaretlenmiş)
- Büyük tablolarda tam tablo kilitleri yok (concurrent operasyonlar kullan)
- Yeni sütunlar varsay…