SQL Server 2005 تغيير التدقيق
-
21-08-2019 - |
سؤال
هناك بنيت في الطريق في SQL Server 2005 إلى مراجعة الأمور على وجه التحديد مثل حذف تخزين الإجراء ؟ هل هناك تاريخ الجدول الذي يمكنني الاستعلام?لدينا لغزا sproc قد اختفى بضع مرات حتى الآن.
المحلول
ويمكنك بناء هذا DDL باستخدام مشغلات:
نصائح أخرى
وفقط إذا كنت تستخدم DDL مشغلات أو استخدام التعريف لتتبع النص "٪ DROP٪ PROC٪ procname٪"
لاحظ أن في SQL Server 2008 كما أنها لديها الآن AUDIT ليحل محل التعريف اثار للأنشطة auding. وهو مشابه ولكن لديه لها UI التكوين الخاص واجهة المستخدم لعرض نتائج
ويمكنك إعداد تتبع منشئ ملفات التعريف لالتقاط الحدث إدارة كائن مخطط التدقيق وتصفية استنادا إلى اسم قاعدة البيانات التي تهتم بها. في أي وقت يتم إنشاء كائن في المخطط، انخفض، تحريره وإطلاق النار حدث في التعريف أن يشمل الشخص الذي فعل التغيير واسم الإجراء المخزن.
وأنت تريد على الأقل هذه الأعمدة التعريف: اسم التطبيق - اسم المستخدم التطبيق تم تشغيل عندما جعلوا التغيير و databasename - زرع قاعدة البيانات التي تحتوي على الكائن يتغير EventSubClass - نوع العمل يظهر تغيير أو تعديل، قطرة، وخلق الخ LOGINNAME - المستخدم من إجراء التغيير ObjectName - كائن يتأثر
[متأخر ولكن يضيف تفاصيل عن كيفية معرفة ما الذي أجرى التغيير حتى قبل نظام التدقيق هو وضع]
الآخرين قد غطت بالفعل طرق مختلفة يمكنك البدء في تدقيق البيانات من أجل رصد التغيرات المستقبلية ولكن إذا كنت أصلا لم يكن لديها أي نظام التدقيق في المكان ثم فإنه من الصعب جدا معرفة من فعل ماذا و عندما تاريخيا.
الخيار الوحيد هو محاولة قراءة سجل المعاملة على افتراض قاعدة البيانات في وضع الاسترداد الكامل.المشكلة هي أن هذا غير معتمد بشكل افتراضي.الخيارات هي:
- أدوات الطرف الثالث مثل وحول Apexsql سجل أو السعي الضفدع
- وظائف غير الموثقة مثل DBCC سجل أو fn_dblog
راجع هذه المواضيع لمزيد من التفاصيل:
كيفية عرض سجل المعاملة في SQL Server 2008
وأنا أتفق. ويمكن أن يكون التعريف SQL Server مع المرشحات. وDDL مشغلات موجودة في SQL Server. هل يمكن أن تخلق شيئا من هذا القبيل:
CREATE TRIGGER ddl_drop_procedure
ON DATABASE
FOR DROP_PROCEDURE
AS
RAISERROR ('You deleted a stored procedure',10, 1)
GO
والخيار الآخر هو استخدام أدوات طرف ثالث مثل التدقيق السيارات من كود بلاكس، أو بواسطة ApexSQL الزناد.