Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Şunlar için geçerlidir:Azure SQL Veritabanı
Microsoft, Azure SQL Veritabanı'te veri bütünlüğünün yönetiminden sorumludur. DBA'ların veri bütünlüğünü izlemek ve SQL Server'daki veritabanı bozulmalarından kurtarmak için geleneksel teknikler olsa da, Microsoft SQL mühendislik ekibi bazı bozulma sınıflarını otomatik ve veri kaybı olmadan yöneten yeni teknikler geliştirdi. Hizmet, bu teknikleri veri kaybı ve kesintileri önlemek için kullanır; çünkü bunları önleyebildiği durumlarda veri kaybı ve kesinti süresi önlenir.
Bu makale, bu tekniklerden bazılarını, nasıl çalıştıklarını ve Azure SQL Veritabanı'de verilerini korumak için hangi adımları atmaları gerektiği konusunda endişeli müşterileri nasıl etkilediklerini açıklıyor.
Microsoft veri bütünlüğünü nasıl yönetiyor
Azure SQL Veritabanı'de veri bütünlüğünü korumak, tekniklerin ve gelişen yöntemlerin bir kombinasyonunu içerir:
Kapsamlı veri bütünlüğü hata uyarısı izleme. SQL Database Engine, veri bütünlüğü endişelerini gösteren tüm hatalar ve yönetilmemiş istisnalar için uyarılar yayar. Mühendislik ekibi bu uyarıları ele alır ve araştırır.
I/O sistemi "yazma kaybı" tespiti. Veritabanı motoru, gözlemlenen fiziksel bozulma sorunlarının en yaygın nedenini tespit etmek için ek işlevselliğe sahiptir: G/Ç sistemi "yazma kayıpları". Bu işlevsellik, sayfa yazımlarını ve bunlara bağlı LSN'leri (Log Sequence Numbers) takip eder. Diskten bir veri sayfasının sonraki okuması, sayfanın beklenen LSN'si ile karşılaştırılır. Diskteki ile beklenen arasında LSN'lerde bir uyumsuzluk olursa, sayfa bayatlanır ve mühendislik ekibine hemen uyarı verilir.
Otomatik sayfa onarımı. Bazı hizmet katmanları iş sürekliliği için veritabanı replikaları sağlar. Hizmet, erişilebilirlik gruplarında kullanılan teknolojiye benzer olan otomatik sayfa onarımını kullanır. Bir replika veri integritesi sorunu nedeniyle bir sayfayı okuyamazsa, hizmet sayfanın yeni bir kopyasını başka bir kopyadan alır ve okunamaz sayfayı veri kaybı veya müşteri kesintisi olmadan değiştirir.
Veri bütünlüğü, hem beklemedeyken hem de aktarım sırasında. Hizmetteki tüm veritabanları, sayfaları doğrulamak için bu
CHECKSUMayarla yapılandırılır; bu ayar, sayfa boyunca kontrol toplamını hesaplar ve okuma sırasında doğrulama için sayfa başlığında saklar. Taşıma Katmanı Güvenliği (TLS), TCP/IP tarafından sağlanan temel taşıma düzeyi kontrol toplamlarına ek olarak tüm iletişim için de kullanılır.Bütünlük kontrollerini yedekleyin ve geri getirin. Azure SQL Veritabanı, hem servis tarafından yönetilen yedeklemeler sırasında hem de her geri yükleme işlemi sırasında sayfa doğrulaması gerçekleştirir. Tespit edilen herhangi bir sorun mühendislik ekibine hemen uyarı verilmesini sağlar.
Microsoft veri bütünlüğü olaylarını nasıl yönetiyor
Microsoft, yanlış sonuçlar veya yolsuzluk olaylarını en yüksek ciddiyetle ele alır. Şirket, Azure’daki tüm mühendislik ekipleri genelinde 24×7 destek sağlar. Bütünlük olaylarını ele alırken amaç, kullanılamazlığı ve veri kaybı miktarını en aza indirmektir.
Sistem veri bütünlüğü sorunları
Microsoft, müşteri verilerini veya veritabanı kullanılabilirliğini etkilemeyen sorunları müşterilere bildirimde bulunmadan düzeltir. Örnekler arasında otomatik sayfa onarımının çözebileceği sorunlar veya müşteri verilerini veya sorgu sonuçlarını etkilemeyen dahili veritabanı meta verileri veya telemetri bozulmaları bulunur.
Müşteri veri bütünlüğü sorunları
Microsoft yanlış sonuç veya müşteri veri bozulması sorunu tespit ettiğinde, Microsoft aşağıdaki işlemleri atar:
- Tespit doğrulandıktan hemen sonra müşteriyle mümkün olan en kısa sürede iletişime geçmeye çalışır, gizlilik yasalarına uygun olarak.
- İletişim kurulduğunda, müşteriyle doğrudan birlikte çalışır, bozulmanın kapsamını açıklar, kurtarma seçeneklerini ortaya çıkarır ve müşterinin uygulamasına ve senaryosuna en uygun seçeneği seçmesine izin verir.
- Mümkün olduğunda, müşterinin uygulamalarına etki kapsamını anlamasına yardımcı olur; örneğin, veri bozulmasının uygulamanın diğer verileri beklenmedik şekilde değiştirip değiştirmediğini tespit eder.
Microsoft, müşterilerle koordineli olarak çeşitli yöntemler ve adımlarla veri bozulmalarını onarır. Müşteri onayı olmadan veri kaybına yol açabilecek onarım girişiminde bulunmaz. Müşteriler, veritabanını DBCC CHECKDB moduna alamadığınız için Azure SQL Veritabanı'de SINGLE_USER onarım seçeneklerini gerçekleştiremez. Ancak, Microsoft SQL ekibi onarım adımları atabilir ancak bunlarla sınırlı değildir:
- Dizini yeniden oluşturun. Örneğin, temel tablonun da bozulmadığı bir kümelenmemiş bir indeks yeniden oluşturun.
- Onarımda veri kaybı olasılığı yoksa,
DBCC CHECKDBöğesiniREPAIR_REBUILDile çalıştırın. - Onarımların bir miktar veri kaybına neden olabileceği durumlarda
DBCC CHECKDBileREPAIR_ALLOW_DATA_LOSSçalıştırın. -
DBCC CHECKDBveri bütünlüğü sorununu gidermek için kullanılamadığında, mühendisler veri bütünlüğü sorunu ortaya çıkmadan önceki bir zamana geri yükleme yapıp ardından işlem günlüğündeki ilgili işlemleri el ile yeniden yürütebilir. Bu tekniğin uygulandığı bir örnek, işlem günlüğünün tüm işlemlerin otomatik tekrarını engelleyecek şekilde bozulduğu ama müşteri verilerinin bozulmadığı durumlarda geçerlidir.
Mühendislik ekibi, yanlış sonuçlara veya veri bozulmalarına yol açan sorunlar üzerinde ayrıntılı otopsi incelemeleri yapar. Ekip, sorun nedeniyle oluşturulan ilgili onarım öğelerini yakından takip ediyor. Bu ölüm sonrası incelemeler, daha önce açıklanan "kayıp yazılar" işlevselliği dahil olmak üzere birçok önemli iyileştirmeye yol açtı.
Müşteri tarafından başlatılan bütünlük kontrolleri
Microsoft tarafından yönetilen veri bütünlüğü koruması, yeni veri bütünlüğü sorunlarının erken tespitini sağlar ve mümkün olduğunda onarılır.
DBCC CHECKDB kullanılarak müşteri tarafından başlatılan bütünlük kontrolleri, DBCC CHECKDB tüm veritabanındaki bozulmaları tespit etmeye yönelik kapsamlı bir mekanizma olduğu için ek bir koruma katmanı sağlar.
DBCC CHECKDBMicrosoft tarafından yönetilen veri bütünlüğü koruma özelliklerini tamamlar.
Tespitin bu genişliği ve derinliği, DBCC CHECKDB yürütülmesi sırasında önemli ölçüde zaman ile ek hesaplama ve G/Ç kaynakları gerektirir. Sonuç olarak, DBCC CHECKDB kaynak çatışması nedeniyle iş yüklerinizi etkileyebilir.
Hizmetin sunduğu izleme ve korumanın yanı sıra, istediğiniz frekans ve zamanda çalışarak DBCC CHECKDB ekstra veri bütünlüğü korumasını ekstra kaynak tüketimiyle dengeleyebilirsiniz.
DBCC CHECKDBAzure SQL Veritabanı Hyperscale'de mevcut değildir. Alternatif olarak, veritabanındaki tek tek tablolar için DBCC CHECKTABLE ('<TableName>') WITH TABLOCK kullanın.
Müşteri geri bildirimi ve gelişen metodolojiler
Azure SQL mühendislik ekibi, hizmetin veri bütünlüğü sorunu tespit yeteneklerini düzenli olarak inceler ve geliştirir. Veri bütünlüğü hataları nadir olsa da, Azure Destek'ten bildirim almadan önce bir hata ile karşılaşırsanız, destek davası açın.
Microsoft'un veri bütünlüğü stratejisiyle ilgili geri bildiriminiz varsa, mühendislik ekibi sizden haber almak ister. Bu konuda geri bildirim veya yorum için mühendislik ekibiyle iletişime geçmek için bkz.https://aka.ms/sqlfeedback Geri bildiriminiz, Microsoft'un mevcut verileri geliştirmesine ve yeni veri bütünlüğü koruma yetenekleri geliştirmesine yardımcı olur.