SQL Data Sync ile ilgili sorunları giderme

ŞUNUN İÇİN GEÇERLİDİR: Azure SQL Database

Bu makalede, Azure'daki depolama hizmetleriyle ilgili bilinen SQL Data Sync nasıl giderilir açıklanmıştır. Bir sorunun çözümü varsa burada sağlanır.

Sanal verilere genel bakış SQL Data Sync bkz. Azure'da birden çok bulut ve şirket içi veritabanı arasında SQL Data Sync eşitleme.

Önemli

SQL Data Sync şu anda Azure SQL Yönetilen Örneği desteklemez.

Eşitleme sorunları

İstemci aracısı ile ilişkili şirket içi veritabanları için portal kullanıcı arabiriminde eşitleme başarısız oluyor

Eşitleme, istemci SQL Data Sync şirket içi veritabanları için portal kullanıcı arabiriminde başarısız oluyor. Aracıyı çalıştıran yerel bilgisayarda, Olay Günlüğünde System.IO.IOException hataları görüyorsunuz. Hatalar, diskin yeterli alana sahip olduğunu söylüyor.

  • Neden:. Sürücüde yeterli alan yok.

  • Çözümleme. %TEMP% dizininin bulunduğu sürücüde daha fazla alan oluşturun.

Eşitleme grubum işlem durumuna takıldı

SQL Data Sync bir eşitleme grubu uzun süredir işlem durumda. Stop komutuna yanıt vermiyor ve günlüklerde yeni giriş yok.

Aşağıdaki koşullardan herhangi biri, eşitleme grubunun işlem durumuna takılmış olmasıyla sonuçlandırabilirsiniz:

  • Neden:. İstemci aracısı çevrimdışı

  • Çözümleme. İstemci aracısının çevrimiçi olduğundan emin olun ve işlemi yeniden deneyin.

  • Neden:. İstemci aracısı yüklü değil veya eksik.

  • Çözümleme. İstemci aracısı yüklü değilse veya eksikse:

    1. Aracı XML dosyası mevcutsa, dosyayı SQL Data Sync yükleme klasöründen kaldırın.
    2. Aracıyı bir şirket içi bilgisayara yükleyin (aynı bilgisayar veya farklı bir bilgisayar olabilir). Ardından, portalda çevrimdışı olarak gösterilen aracı için oluşturulan aracı anahtarını gönderin.
  • Neden:. SQL Data Sync hizmeti durduruldu.

  • Çözümleme. SQL Data Sync yeniden başlatın.

    1. Başlat menüsünde Hizmetler için arama yapabilirsiniz.
    2. Arama sonuçlarında Hizmetler'i seçin.
    3. SQL Data Sync bulun.
    4. Hizmet durumu Durduruldu ise, hizmet adına sağ tıklayın ve Ardından Başlat'ı seçin.

Not

Yukarıdaki bilgiler eşitleme grubunızı işleme durumunun dışında taşı Microsoft Desteği eşitleme grubu durumunu sıfırlayabilirsiniz. Eşitleme grubu durumunu sıfırlamak için, Azure SQL Veritabanı için Microsoft Q&A soru sayfasında bir gönderi oluşturun. Gönderiye abonelik kimliğinizi ve sıfırlanacak grubun eşitleme grubu kimliğini dahil edin. Bir Microsoft Desteği mühendisi gönderinize yanıt verir ve durum sıfırlanırsa size haber verir.

Tablolarımda hatalı veriler görüyorum

Aynı adı olan ancak farklı veritabanı şemalarından olan tablolar bir eşitlemeye dahil edilirse, eşitlemeden sonra tablolarda hatalı veriler görüyorsunuz.

  • Neden:. Sağlama SQL Data Sync, aynı adı olan ancak farklı şemalarda bulunan tablolar için aynı izleme tablolarını kullanır. Bu nedenle, her iki tablodaki değişiklikler aynı izleme tablosuna yansıtıldı. Bu, eşitleme sırasında hatalı veri değişikliklerine neden olur.

  • Çözümleme. Tablolar bir veritabanındaki farklı şemalara ait olsa bile eşitlemeye dahil olan tabloların adlarının farklı olduğundan emin olun.

Başarılı bir eşitlemeden sonra tutarsız birincil anahtar verileri görüyorum

Eşitleme başarılı olarak raporlanır ve günlükte başarısız veya atlanan satır yok ama eşitleme grubunda veritabanları arasında birincil anahtar verileri tutarsız olduğunu gözlemlersiniz.

  • Neden:. Bu sonuç tasarıma göredir. Herhangi bir birincil anahtar sütununda yapılan değişiklikler, birincil anahtarın değiştir olduğu satırlarda tutarsız veriye neden olur.

  • Çözümleme. Bu sorunu önlemek için birincil anahtar sütununda hiçbir verinin değişmey olduğundan emin olmak. Bu sorunu oluştuktan sonra düzeltmek için eşitleme grubunda tüm uç noktalardan tutarsız veriler olan satırı silin. Ardından satırı yeniden atarak.

Performansta önemli bir düşüş görüyorum

Performansınız büyük olasılıkla kullanıcı arabirimini bile açamayabilirsiniz Data Sync düşer.

  • Neden:. Bunun en olası nedeni bir eşitleme döngüsü olmasıdır. Eşitleme döngüsü, eşitleme grubu A'ya göre eşitleme B eşitlemesi tetiklese ve bu da eşitleme grubunu A'ya göre eşitlemeyi tetiklese gerçekleşir. Gerçek durum daha karmaşık olabilir ve döngüde ikiden fazla eşitleme grubu içeriyor olabilir. Sorun, eşitleme gruplarının birbiriyle çakışması nedeniyle döngüsel bir eşitleme tetiklemesi olmasıdır.

  • Çözümleme. En iyi düzeltme önlemedir. Eşitleme gruplarınıza döngüsel başvurular olmadığınızdan emin olur. Bir eşitleme grubu tarafından eşitlenen herhangi bir satır, başka bir eşitleme grubu tarafından eşitlenen bir satırdır.

Şu iletiyi görüyorum: "NULL değeri sütununa <column> eklenemiyor. Sütun null değerlere izin vermiyor." Bu ne anlama geliyor ve nasıl düzeltebilirim?

Bu hata iletisi aşağıdaki iki sorundan birinin meydana geldiğine işaret ediyor:

  • Tablonun birincil anahtarı yok. Bu sorunu çözmek için, eşitleyilen tüm tablolara bir birincil anahtar ekleyin.
  • CREATE INDEX deyiminde WHERE yan tümcesi var. Data Sync bu koşulu işlemez. Bu sorunu düzeltmek için WHERE yan tümcesini kaldırın veya tüm veritabanlarında el ile değişiklikleri yapın.

Döngüsel Data Sync nasıl ele alır? Başka bir ifadeyle, aynı veriler birden çok eşitleme grubuyla eşitlenen ve sonuç olarak değişmeye devam ediyorsa?

Data Sync döngüsel başvuruları işlemez. Bunlardan kaçının.

İstemci aracısı sorunları

İstemci aracısı ile ilgili sorunları gidermek için bkz. Data Sync Agent giderme.

Kurulum ve bakım sorunları

"Disk dışı alan" iletisi alıyorum

  • Neden. Soltover dosyalarının silinmesi gerekiyorsa "disk alanı yetersiz" iletisi görünebilir. Bu, virüsten koruma yazılımından kaynaklanıyor olabilir veya silme işlemleri denendiğinde dosyalar açık olur.

  • Çözümleme. % Temp% klasöründe () bulunan eşitleme dosyalarını el ile silin del \*sync\* /s . Ardından,% Temp% klasöründeki alt dizinleri silin.

Önemli

Eşitleme sürerken hiçbir dosyayı silmeyin.

Eşitleme grubumu silemiyorum

Bir eşitleme grubunu silme denemeniz başarısız olur. Aşağıdaki senaryolardan herhangi biri, bir eşitleme grubunun silinmesine neden olabilecek bir hata oluşabilir:

  • Neden. İstemci aracısı çevrimdışı.

  • Çözümleme. İstemci aracısının çevrimiçi olduğundan emin olup yeniden deneyin.

  • Neden. İstemci aracısı yüklü değil veya eksik.

  • Çözümleme. İstemci aracısı yüklü değilse veya eksikse:
    a. Aracı XML dosyası mevcutsa, dosyayı SQL Data Sync yükleme klasöründen kaldırın.
    b. Aracıyı bir şirket içi bilgisayara yükleyin (aynı bilgisayar veya farklı bir bilgisayar olabilir). Ardından, portalda çevrimdışı olarak gösterilen aracı için oluşturulan aracı anahtarını gönderin.

  • Neden. Bir veritabanı çevrimdışı.

  • Çözümleme. Veritabanlarının çevrimiçi olduğundan emin olun.

  • Neden. Eşitleme grubu sağlanıyor veya eşitleniyor.

  • Çözümleme. Sağlama veya eşitleme işlemi bitene kadar bekleyin ve ardından eşitleme grubunu silmeyi yeniden deneyin.

SQL Server veritabanının kaydını silemiyor

  • Neden. Büyük olasılıkla, zaten silinmiş olan bir veritabanının kaydını silmeye çalışıyorsunuz.

  • Çözümleme. SQL Server veritabanının kaydını silmek için veritabanını seçin ve sonra silmeyi zorla' yı seçin.

    Bu işlem veritabanını eşitleme grubundan kaldıramazsa:

    1. İstemci Aracısı ana bilgisayar hizmetini durdurup yeniden başlatın:
      a. Başlat menüsünü seçin.
      b. Arama kutusuna Services. msc yazın.
      c. Arama sonuçları bölmesinin Programlar bölümünde Hizmetler' e çift tıklayın.
      d. SQL Data Sync hizmetine sağ tıklayın.
      e. Hizmet çalışıyorsa, uygulamayı durdurun.
      f. Hizmete sağ tıklayın ve ardından Başlat' ı seçin.
      örneğin: Veritabanının hala kayıtlı olup olmadığını denetleyin. Artık kayıtlı değilse işiniz yapılır. Aksi halde, bir sonraki adımla devam edin.
    2. İstemci Aracısı uygulamasını açın (SqlAzureDataSyncAgent).
    3. Kimlik bilgilerini düzenle' yi seçin ve ardından veritabanı için kimlik bilgilerini girin.
    4. Kayıt silme işlemine devam edin.

Sistem hizmetlerini başlatmak için yeterli ayrıcalıklara sahip değil

  • Neden. Bu hata iki durumda oluşur:

    • Kullanıcı adı ve/veya parola hatalı.
    • Belirtilen kullanıcı hesabı, hizmet olarak oturum açmak için yeterli ayrıcalıklara sahip değil.
  • Çözümleme. Kullanıcı hesabına hizmet olarak oturum açma kimlik bilgileri verin:

    1. Başlat > Denetim Masası > Yönetim Araçları > yerel güvenlik ilkesi > yerel ilke > Kullanıcı Rights Management' ye gidin.
    2. Hizmet olarak oturum aç ' ı seçin.
    3. Özellikler iletişim kutusunda Kullanıcı hesabını ekleyin.
    4. Uygula’yı ve sonra Tamam’ı seçin.
    5. Tüm pencereleri kapatın.

Bir veritabanında "güncel olmayan" durumu vardır

  • Neden. SQL Data Sync, hizmetten 45 gün veya daha fazlası için çevrimdışı olan veritabanlarını kaldırır (veritabanının çevrimdışı olduğu zamandan itibaren sayılır). Bir veritabanı 45 gün veya daha uzun bir süre sonra yeniden çevrimiçi duruma gelirse, durumu güncel değildir.

  • Çözümleme. Veritabanlarının hiçbirinin 45 gün veya daha uzun süre çevrimdışı çalışmamasını sağlayarak güncel olmayan bir durumu önleyebilirsiniz.

    Veritabanının durumu güncel değilse:

    1. Eşitleme grubundan güncel olmayan bir durumu olan veritabanını kaldırın.
    2. Veritabanını yeniden eşitleme grubuna ekleyin.

    Uyarı

    Çevrimdışıyken bu veritabanında yapılan tüm değişiklikleri kaybedersiniz.

Bir eşitleme grubunda "güncel olmayan" durum bulunur

  • Neden. Bir veya daha fazla değişiklik 45 günlük bekletme dönemi boyunca uygulanmayabilir, bir eşitleme grubu güncel hale gelebilir.

  • Çözümleme. Bir eşitleme grubunun güncel durumundan kaçınmak için, geçmiş görüntüleyicisinde eşitleme işlerinizin sonuçlarını düzenli olarak inceleyin. Uygulanmanıza neden olan değişiklikleri araştırın ve çözümleyin.

    Eşitleme grubunun durumu güncel değilse, eşitleme grubunu silip yeniden oluşturun.

Bir eşitleme grubu, aracıyı kaldırmak veya durdurmak için üç dakika içinde silinemez

İlişkili SQL Data Sync istemci aracısını kaldırmak veya durdurmak için bir eşitleme grubunu üç dakika içinde silemezsiniz.

  • Çözümleme.

    1. İlişkili eşitleme aracıları çevrimiçi iken bir eşitleme grubunu kaldırın (önerilir).
    2. Aracı çevrimdışıysa, ancak yüklüyse şirket içi bilgisayarda çevrimiçi duruma getirin. SQL Data Sync portalında aracının durumunu çevrimiçi olarak görünmesini bekleyin. Ardından, eşitleme grubunu kaldırın.
    3. Kaldırılmış olduğundan, aracı çevrimdışıysa:
      a. Aracı XML dosyası mevcutsa, dosyayı SQL Data Sync yükleme klasöründen kaldırın.
      b. Aracıyı bir şirket içi bilgisayara yükleyin (aynı bilgisayar veya farklı bir bilgisayar olabilir). Ardından, portalda çevrimdışı olarak gösterilen aracı için oluşturulan aracı anahtarını gönderin.
      c. Eşitleme grubunu silmeyi deneyin.

Kayıp veya bozuk bir veritabanını geri yükleyene ne olur?

Kayıp veya bozuk bir veritabanını yedekten geri yükleyebilirsiniz, veritabanının ait olduğu eşitleme gruplarında verilerin yakınsanmaması olabilir.

Sonraki adımlar

Aşağıdakiler hakkında daha fazla SQL Data Sync bkz:

SQL Veritabanı hakkında daha fazla bilgi için bkz: