سلام خدمت دوستان عزیزم
امیدوارم که عالی عالی باشین
میخوام در این پست اشاره ای کنم به اینکه اساسا DBA چیست؟ (ببخشید کیست). 😁
بیاین اینجوری نگاه کنید که یک DBA مثل یک کارآگاه می مونه.
حالا چرا کارآگاه؟
به خاطر اینکه دائما باید در مانیتورینگ رفتارهای مختلف رو بررسی کنه و اگه جایی یک چیز مشکوکی دید اینقدر بره دنبالش تا ببینه سرمنشا اون چیه و چرا رخ داده.
حالا بریم یک مثال واقعی براتون بزنم
چند روز پیش بکاپ هارو بررسی میکردم و میدیدم که حجمش خیلی عجیب غریب داره میره بالا. مثلا توی یک روز دیدم ۶۰ گیگابایت بکاپ Diff ما شده در صورتی که شب قبلش ما Full backup داشتیم. توی این چند روز من جداول رو نگاه میکردم ،اول شک کردم به حجم داده های جداول شاید یک دفعه زیاد شده. بعد از این رشد عجیب غریب نگاه کردم دیدم داده ها تغییر محسوسی نداشتن ولی حجم بکاپ این دفعه ۱۵ گیگابایت باز بهش اضافه شده. به فایل LOG شک کردم و اونو بررسی کردم دیدم بله یک دفعه حجمش شده ۲۰۰ گیگابایت. رفتم سراغ دلیل این مساله.
اول Log backupها رو بررسی کردم دیدم همش درسته.
بعد رفتم دستور زیر رو اجرا کردم
Select Name , Log_reuse_wait_desc from sys.databases
دراین کد بیان میکنه که Log File شما Wait چه مساله ای هست که رشد می کنه. دیدم که در این فیلد نوشته Replication. ماهم که Replication نداشتیم ولی CDC رو راه اندازی کرده بودم.
جاب CDC رو بررسی کردم دیدم که Stop شده و به دلیل اینکه Alarm ها خیلی زیاد بوده در لاگ من گم شده و ندیدمش. اونو Start کردم و این حجم Used فایل LDF کاهش پیدا کرد. به دلیل اینکه فایل LDF من Fragment هم شده بود اومدم فایل LDF رو Shrink کردم و حجمش رو کاهش دادم روی ۲۰ گیگابایت و Fragment اون هم مرتفع شد( به دلیل اینکه قبلا هم روی این حجم تنظیمش کرده بودم)
یکی از دلایل Fragment بودن فایل LDF تعداد بالای VLF هاست. و این VLF ها به ازای هرمرتبه ای که یک Grow در فایل LDF رخ میده اضافه میشن.
این دفعه که Full backup گرفتم حجمش تقریبا ۲۰ گیگابایت کاهش پیدا کرد و به عدد نرمال قبلی رسیدم.
کسی که DBA هست مرتبا باید همه این موارد رو به صورت روزانه چک کنه و کنترل کنه. حتما باید سیستم مانیتورینگ باشه. حتما باید سیستم Alarming داشته باشین.
و حتما باید Error log ها رو مدیریت کنید که یک دفعه مثل من حجم Error های بدون استفاده باعث نشه که چنین خطاهای مهمی رو نبینین.
شاد باشین و شکرگزار
حمیدرضا صادقیان
@hamidreza_Sadeghian
#DBA
#Monitoring
#Database_Backup
امیدوارم که عالی عالی باشین
میخوام در این پست اشاره ای کنم به اینکه اساسا DBA چیست؟ (ببخشید کیست). 😁
بیاین اینجوری نگاه کنید که یک DBA مثل یک کارآگاه می مونه.
حالا چرا کارآگاه؟
به خاطر اینکه دائما باید در مانیتورینگ رفتارهای مختلف رو بررسی کنه و اگه جایی یک چیز مشکوکی دید اینقدر بره دنبالش تا ببینه سرمنشا اون چیه و چرا رخ داده.
حالا بریم یک مثال واقعی براتون بزنم
چند روز پیش بکاپ هارو بررسی میکردم و میدیدم که حجمش خیلی عجیب غریب داره میره بالا. مثلا توی یک روز دیدم ۶۰ گیگابایت بکاپ Diff ما شده در صورتی که شب قبلش ما Full backup داشتیم. توی این چند روز من جداول رو نگاه میکردم ،اول شک کردم به حجم داده های جداول شاید یک دفعه زیاد شده. بعد از این رشد عجیب غریب نگاه کردم دیدم داده ها تغییر محسوسی نداشتن ولی حجم بکاپ این دفعه ۱۵ گیگابایت باز بهش اضافه شده. به فایل LOG شک کردم و اونو بررسی کردم دیدم بله یک دفعه حجمش شده ۲۰۰ گیگابایت. رفتم سراغ دلیل این مساله.
اول Log backupها رو بررسی کردم دیدم همش درسته.
بعد رفتم دستور زیر رو اجرا کردم
Select Name , Log_reuse_wait_desc from sys.databases
دراین کد بیان میکنه که Log File شما Wait چه مساله ای هست که رشد می کنه. دیدم که در این فیلد نوشته Replication. ماهم که Replication نداشتیم ولی CDC رو راه اندازی کرده بودم.
جاب CDC رو بررسی کردم دیدم که Stop شده و به دلیل اینکه Alarm ها خیلی زیاد بوده در لاگ من گم شده و ندیدمش. اونو Start کردم و این حجم Used فایل LDF کاهش پیدا کرد. به دلیل اینکه فایل LDF من Fragment هم شده بود اومدم فایل LDF رو Shrink کردم و حجمش رو کاهش دادم روی ۲۰ گیگابایت و Fragment اون هم مرتفع شد( به دلیل اینکه قبلا هم روی این حجم تنظیمش کرده بودم)
یکی از دلایل Fragment بودن فایل LDF تعداد بالای VLF هاست. و این VLF ها به ازای هرمرتبه ای که یک Grow در فایل LDF رخ میده اضافه میشن.
این دفعه که Full backup گرفتم حجمش تقریبا ۲۰ گیگابایت کاهش پیدا کرد و به عدد نرمال قبلی رسیدم.
کسی که DBA هست مرتبا باید همه این موارد رو به صورت روزانه چک کنه و کنترل کنه. حتما باید سیستم مانیتورینگ باشه. حتما باید سیستم Alarming داشته باشین.
و حتما باید Error log ها رو مدیریت کنید که یک دفعه مثل من حجم Error های بدون استفاده باعث نشه که چنین خطاهای مهمی رو نبینین.
شاد باشین و شکرگزار
حمیدرضا صادقیان
@hamidreza_Sadeghian
#DBA
#Monitoring
#Database_Backup
👍43❤4🤔1🤣1