كيف الآراء وprocs وتشير إلى آخر ديسيبل يتسبب طويلا لتنمو؟

StackOverflow https://stackoverflow.com/questions/213134

  •  03-07-2019
  •  | 
  •  

سؤال

ولقد حصلت على 2 قواعد البيانات على خادم واحد. دعنا نسميها ديسيبل A و B. قاعدة بيانات حوالي 11 GB، قاعدة بيانات B صغير جدا (155mb). قاعدة بيانات B لديه بعض الآراء وprocs التي تحاول الوصول باستمرار وتحديث البيانات في قاعدة بيانات A.

والشيء المثير للاهتمام هو، سجل قاعدة البيانات B ينمو بسرعة إلى أحجام كبيرة، وأعتقد أنه نما إلى نحو 12 GB في أقل من أسبوع. قاعدة بيانات ولا ينمو بهذا الحجم بهذه السرعة.

وماذا يمكن أن تسبب لي سجل أن ينمو هذا القدر؟ هل هناك شيء ما يحدث عند تحديد البيانات من قاعدة بيانات أخرى، من شأنه أن يسبب لي سجل لتنمو من هذا القبيل؟

وأنا أعلم عندما تفعل شيئا من هذا القبيل ضد قاعدة بيانات على خادم آخر، والبيانات هي كل انتقلت إلى قاعدة بيانات الدعوة قبل انها انضمت واختار ... أستطيع أن أرى هذا النمو سجل المسببة، فإن نفس الشيء أن يحدث على نفس الخادم؟

وSQL2000 SP4 STD طبعة
نموذج استرداد كامل

وشكرا مقدما، جون

وراجع للشغل، وأنا أدرك أن تغيير نموذج استرداد بلدي بسيطة قد تساعد، ولكن أود أن أعرف لماذا هذا يحدث لأول مرة.

هل كانت مفيدة؟

المحلول

لا أستطيع أن أتخيل لماذا عبارة SELECT بسيط من شأنه أن يضيف أي شيء إلى سجل المعاملة، ولكن ليس لدي الكثير من الخبرة مع ملقمات المرتبطة، لذلك لا أستطيع أن أقول على وجه اليقين ما يمكن أن يحدث وراء الكواليس .

ولكن، ويقول لك "قاعدة بيانات B لديه بعض الآراء وprocs التي تحاول الوصول باستمرار وتحديث البيانات في قاعدة بيانات A."، وذلك على الرغم من أن البيانات الأساسية موجود على قاعدة بيانات A، لأن التطبيق الجديد الخاص بك يتصل قاعدة بيانات B ويستخدم انها الأشياء، فإنه يبدو من المعقول أن يتم تسجيل هذه العمليات في سجل تران ب.

ولكن هذا التخمين فقط من جهتي. لماذا لا يتم فقط فحص سجل المعاملات مباشرة ومعرفة ما إذا ما كان يحتوي يبدو من المعقول؟ REDGATE لديه سجل المستكشف الحرة التي تعمل مع SQL 2000 (انظر HTTP: // شبكة الاتصالات العالمية .red-gate.com / المنتجات / SQL_Log_Rescue / ملف index.htm )؛ لقد استعملت مرة واحدة فقط قبل، ولكن يبدو أن تعمل بشكل جيد وفعلا أنقذ بلادي بيكون في هذا المثال معين.

وأنا أعترف أنني غريبة عن التفاصيل، ولكن في وضعك سأكون يميل إلى قمع فضولي ومجرد التعامل مع ملف السجل. بعد كل شيء، وهذا هو مؤقت فقط، وإذا كان نمو السجل هو قطعة أثرية من ملقمات المرتبطة يجب أن إصلاح نفسها بمجرد الانتهاء من التطبيق الجديد والتقاعد قاعدة بيانات A.

وأيضا، أدلى Godeke نقطة جيدة حول النسخ الاحتياطي. إذا ينمو ملف السجل كبير جدا، ثم تعضد هذا الامر في كثير من الأحيان. دعم الامر باقتطاع السجل ولكن داخليا فقط؛ وأي نسبة من ملف السجل المستخدمة سوف يتقلص، ولكن الحجم الفعلي للملف على القرص لن تتغير حتى يمكنك استخدام SHRINKFILE DBCC للقيام بذلك.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top