Neden aynı kullanıcılarla 3 veritabanınız var?
Bir veritabanı şimdi kapanırsa ne olur?
Bu iki soruyu soruyorum çünkü diğer iki veritabanının kullanımını engelleyen kullanıcı kaynaklı veritabanının Con sesi göründüğü kadar büyük bir sorun olmayabilir.
Ayrıca, bir veritabanı artık kapanırsa, kullanıcılar bu süre zarfında diğer iki DB'de değiştirildiyse zaten tutarlılık sorunlarınız olacaktır. Daha fazla bağlam olmadan en iyi tavsiyeyi verebileceğimizi sanmıyorum.
Şu anda kullanıcılar için dördüncü bir veritabanı oluşturacağım, sadece orada değişiklikler yapacağım ve diğer veritabanlarında senkronize edeceğim. Aynı verileri üç yerde değiştirerek zaten dağıtılmış durumdasınız ve muhtemelen tutarlılık problemleriniz var. Hata toleransı önemliyse, bu şema yine de çoklu giriş problemini çözerken bunu verir.
Mevcut kaynaklardan birini kullanmak yerine bu dördüncü kullanıcı / yalnızca ayar veritabanına sahip olmanın iyi bir strateji olduğunu düşünüyorum çünkü diğer kaynaklara bağlı olmadığı veya yoğun bir şekilde kullanılmadığı için aşağı gitme olasılığı daha düşük. Şimdi bunu yapamayacağınızı söylediğinizi görüyorum, ama nedenini açık değilim. Ana veritabanındaki uygulamalar kullanıcının doğrudan düzenlemesini destekliyor mu veya kullanıcı başka bir yere işaret edebilecek tamamen ayrı bir işlevi mi düzenliyor?
Doğru, bu "kanonik kullanıcı tablosu" fikri ile - eşanlamlıları kullanın ya da verileri senkronize edin - aşağı kullanıcı DB sırasında kullanıcıları değiştiremezsiniz, ancak bu bana iyi geliyor. Sorunu giderin ve getirin! Bir kaynak, bir düzenleme yeri, kırılırsa düzeltilecek bir şey. Senkronizasyon ile diğer tüm veritabanlarında çalışabilecekleri geçici kopyalar bulunur, ancak düzenleme yapılmaz. Sistemler arasında veri çoğaltmayı en aza indirmek harika ve kullanışlı bir hedeftir. Aynı verileri üç yere girmek ciddi bir sorundur, bu yüzden bunu ortadan kaldırmak için elinizden geleni yapın.
Yorumlarınızın daha fazlasını ele almak için, kullanıcı kimlikleriniz tüm uygulamalarınızda farklıysa, iki yeni veritabanınızın bunları ana veritabanıyla senkronize etmeleri için planlanan bir kesinti süresini ciddiye almalısınız (fikirlere ihtiyacınız varsa ayrı bir soru sorun) bu nasıl başarılır, ki bu zor ama gerçekten zor değil).
İşletmenizin ihtiyaçlarını analiz ederseniz ve ana veritabanının iyi kullanıcı verilerine sahip olması gerektiğini tespit ederseniz, yine de kanonik olarak kullanırsınız, ardından eşzamanlı olmayan zamanların tüm veritabanlarını nasıl etkilediğini ele almak için eşanlamlılar veya senkronizasyon arasında seçim yaparsınız.
Eş anlamlıları kullanmaya yönelik ek bir Con, artık her veritabanında Kullanıcılara uygun FK'lere sahip olamayacağınızdır.