PDA

View Full Version : پيام خطا در backup از sql server



ariobarzan
دوشنبه 11 آبان 1388, 13:48 عصر
با سلام
من با استفاده از دستور


ADOCommand1.CommandText:='backup database mydb to disk='+ quotedstr(('D:\')+backupName+('.bak'));

از ديتا بيس كه روي سرور قرار داره و در برنامه با يك كليد در اختيار كاربر قرار گرفته ، backup ميگيرم.
كه در يه شركت بدون مشكل backup ميگيره
روي سرور مشابه با همان برنامه وقتي كاربر مي خواد backup بگيره بعد از چند ثانيه پيام
Timeout expired روي صفحه ظاهر ميشه
مسير share شده روي سرور را موقع صدور دستور backup كه نگاه ميكنم ميبينم كه براي چند ثانيه فايل backup ايجاد ميشه ولي بعد پاك ميشه
به نظر شما مشكل كجاست ؟

AFTABGARDAN2006
دوشنبه 11 آبان 1388, 14:49 عصر
مسیری رو که می دی SQL Server اون مسیر رو روی سرور در نظر می گیره یعنی در شرکت اولی اون مسیر روی سرور وجود داره ولی در شرکت دوم درست نیست

ariobarzan
دوشنبه 11 آبان 1388, 15:05 عصر
با تشكر از توجه شما
مسير وجود داره
همونطور كه گفتم وقتي روي سرور چك مي كنم مي بينم كه در مسير share شده
براي چند ثانيه فايل ايجاد هم ميشه ولي دوباره پاك ميشه
ظاهرا سرور sql نمي تونه دستور را اجرا كنه
ممكنه جايي نياز به تنظيم زمان پاسخ به دستور backup داشته باشه؟

ariobarzan
دوشنبه 11 آبان 1388, 23:26 عصر
با سلام مجدد
با search توی اینترنت مشکلم حل شد
راه حل اینکه :
قبل از اجرای دستور تهیه backup باید دستور

ADOCommand1.CommandTimeout = 300

نوشته شود که عدد 300 بر حسب ثانیه است
این setting باعث می شود که در بانک اطلاعاتی با حجم بالا , سرور زمان کافی جهت اجرای دستور را داشته باشد
علت اینکه در شرکت اول بدون مشکل اجرا می شد , کم بودن حجم اطلاعات DB آن بود
ولی در شرکت دوم حجم دیتابیس خیلی زیاد بود که بدین ترتیب مشکل حل شد .