PDA

View Full Version : به دست اوردن مدت زمان back up گيري؟



farashah_jalal
دوشنبه 18 بهمن 1389, 09:48 صبح
با سلام خدمت دوستان
من مي خوام مدت زمان back up گيري رو به دست بيارم تا بتونم اون رو در يك progres barنشون بدم يعني مي خوام پيشرفت كار back up گيري رو به كاربر نمايش بدهم.
ايا دستور سمت sql وجود داره كه مدت انجام اين كار رو به من بده؟

Reza_Yarahmadi
دوشنبه 18 بهمن 1389, 20:24 عصر
من مي خوام مدت زمان back up گيري رو به دست بيارم تا بتونم اون رو در يك progres barنشون بدم يعني مي خوام پيشرفت كار back up گيري رو به كاربر نمايش بدهم.
ايا دستور سمت sql وجود داره كه مدت انجام اين كار رو به من بده؟
فکر نمیکنم دستور مستقیمی برای محاسبه مدت زمان بک آپ گیری وجود داشته باشه ولی میتونید درصد پیشرفت رو با استفاده از دستور زیر بگیرید و اونو با پروگرس بار نمایش بدید.

Select Percent_Complete
From Sys.DM_Exec_Requests
Where Command = 'BACKUP DATABASE'

farashah_jalal
چهارشنبه 20 بهمن 1389, 22:35 عصر
با سلام و تشکر
یه سوال دیگه مدت رمانی که بر می گردونه بر حسب چه فرمتی هست.
و چرا برای backup گیری که حجم ان 10mb هست مدت اجرای ان چرا صفر نشان می دهد.یعنی back گیری فایل 10 mbاین قدر سریع انجام میشه.؟؟؟؟

shadi khanum
پنج شنبه 21 بهمن 1389, 21:24 عصر
اگه با smo، بکاپ بگیرین خودش یه event داره که درصد پیشرفت رو میگه. دقیقا مثل managment اس کیو ال موقع backup گیری

Reza_Yarahmadi
پنج شنبه 21 بهمن 1389, 22:53 عصر
یه سوال دیگه مدت رمانی که بر می گردونه بر حسب چه فرمتی هست.دوست عزیز عرض کردم که زمان برنمیگردونه ، درصد پیشرفت بک آپ رو برمیگردونه (با فرمت float)

و چرا برای backup گیری که حجم ان 10mb هست مدت اجرای ان چرا صفر نشان می دهد.یعنی back گیری فایل 10 mbاین قدر سریع انجام میشه.؟؟؟؟ برای 10M زمان زیادی نیاز نیست ولی فکرکنم مشکل از نحوه کدنویسی شما باشه. برای اینکه پیشرفت رو نمایش بدید قبل از اجرای دستور بک آپ گیری یک نخ(Thread) جدید درست کنید و توی اون دستور چک کردن درصد پیشرفت رو بنویسید. به نمونه ساده زیر نگاه کنید