SQL Server denetim tablolarını uygulamak için öneriler?

oy
29

Ben geçmişte kullandığınız basit bir yöntem temelde sadece, yapısı Ben denetlemek ve sonra bir güncelleştirme oluşturmak / ana masada tetiği silmek istediğiniz birini aynalar ikinci bir tablo yaratıyor. rekor silinen / güncellenir önce, mevcut durumu tetikleyici vasıtasıyla denetim tabloya kaydedilir.

Etkili iken, denetim tablodaki veriler değil kapalı rapor etmek en yararlı ya da basittir. Herkes denetim veri değişiklikleri için daha iyi bir yöntem olup olmadığını merak ediyorum?

Orada bu kayıtların çok fazla güncelleme olabilir ama tüm değişiklikleri rapor kolayca denetlenmiş ve edilir müşteriye önemlidir bu yüzden, son derece hassas bir bilgidir olmamalıdır.

Oluştur 06/08/2008 saat 17:39
kullanıcı
Diğer dillerde...                            


6 cevaplar

oy
1

Herhangi yerleşik denetim paketleri var mı? Oracle bile SQL değiştirerek herhangi kötü adam erişimi dışında ayrı bir sunucuya kapalı denetim değişiklikleri gönderecek güzel bir paket vardır.

Onların örnek, denetim tabloları değiştirme kimseyi uyarmak için nasıl gösterir ... müthiş.

Cevap 06/08/2008 saat 17:49
kaynak kullanıcı

oy
17

Ne kadar yazma Bu tabloda (ler) okunması vs bekliyorsunuz?

Ben Tablo, Sütun, OldValue, newValue, kullanıcı ve ChangeDateTime ilişkin sütunların, tek denetim masası kullandım - Yeterince jenerik DB başka değişikliklerle çalışmak ve bir veri LOT bu tablo, haberlere yazılı var ise bu veriler üzerinde onlar günün düşük kullanım dönemlerinde çalışacak olabileceğini seyrek yeterli idi.

Eklendi: raporlama vs veri miktarı bir sorun olacaksa, denetim tablo işlerini yapmaktan usta sunucu bogging olmadan gerektiğinde raporlar çalıştırmak için izin veren bir salt okunur veritabanı sunucusuna tekrarlanabilir.

Cevap 06/08/2008 saat 17:51
kaynak kullanıcı

oy
1

OmniAudit ihtiyacınız için iyi bir çözüm olabilir. Sanırım kendi denetim rutinleri yazma oldukça mutluyum çünkü daha önce hiç kullanmadıysanız, ama iyi geliyor.

Cevap 06/08/2008 saat 18:56
kaynak kullanıcı

oy
1

Onun içinde Greg tarafından açıklanan yaklaşım kullanmak cevap ve masa tetikleyiciler çağrılan bir saklı yordam ile denetim tablosunu doldurmak.

Cevap 06/08/2008 saat 19:23
kaynak kullanıcı

oy
2

Bu iki bağlantılar yararlı bulduk:

CLR ve tek denetim masası kullanma.
SQL 2005 CLR ile genel bir denetim tetikleyicisi oluşturmak

Her tablo için kullanılması tetikleyiciler ve ayrı denetim masası denetlenen.
Nasıl SQL Server verilerde değişiklik denetleme mı?

Cevap 01/09/2008 saat 08:14
kaynak kullanıcı

oy
6

Bunun için iki tablo tasarımını kullanıyor.

Bir tablo (işlem, tarih, etkilenen satır sayısını ve çift daha başladı giriş için veritabanı, tablo adı, şema, sütun, işlem tetikleyen uygulamanın, ana bilgisayar adı) işlem hakkında veri düzenliyor.

biz gerekirse değişiklikleri geri almak ve eski / yeni değerlerle ilgili rapor böylece İkinci tablo yalnızca veri değişikliklerini saklamak için kullanılır.

Başka bir seçenek bu gibi bir üçüncü taraf aracı kullanmaktır ApexSQL Denetim SQL Server veya Değiştir veri yakalama özelliği.

Cevap 10/05/2013 saat 08:41
kaynak kullanıcı

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more