PDA

View Full Version : کمک در backup گرفتن از sql



shahin69
چهارشنبه 30 اردیبهشت 1394, 12:29 عصر
سلام
دوستان فرق sql server full backup با sql server differential backup چیه؟

ایا اول باید یه full backup بگیریم بعد sql به صورت خودکار زمان بندی کنیم که به صورت differential بکاپ بگیرد؟
بعد برای restor کردن دیتابیس در صورت بروز مشکل اول full backup برگردانیم بعد اخرین differential گرفته شده درسته؟

میخوام بکاپی از دیتابیس بگیرم که خیالم راحت باشه اگر به هر دلیلی sql از کار افتاد(کلا رفت هوا) راحت بتونم اطلاعات برگردونم بدون هیچ نگرانی؟

با تشکر

pezhvakco
چهارشنبه 30 اردیبهشت 1394, 22:16 عصر
Full BackUp :
در این نوع Backup گیری از کلیه Database های موجود بر روی Instance شما به همراه همگی Transaction Log های موجود در آن Backup گرفته می شود و با این روش شما براحتی می توانید اطلاعات خود را Recover یا بازیابی کنید. این روش ساده ترین روش بازیابی اطلاعات می باشد زیرا تمامی اطلاعات به یکباره بازیابی می شوند.

Differential BackUp :
در این روش فقط از تغییراتی که در Database های شما از آخرین Backup گرفته شده انجام شده است Backup گرفته می شود ، طبیعی است که اگر از Database های شما تاکنون Backup گرفته نشده باشد در اولین باری که بصورت Differential بکاپ بگیرید تمامی اطلاعات Database ها Backup گرفته می شوند.

در فایل های ویندوز یک بیت به نام Archive Bit وجود دارد که تغییر کردن یک فایل را به شما نشان می دهد ، همین مفهوم در SQL Server به عنوان extent شناخته می شود

اگر شما یک Full Backup بگیرید و سپس یک Differential Backup بگیرید محتویات موجود در Differential Backup شما فقط شامل اطلاعات تغییر کرده بعد از Full Backup می باشد که در واقع همان اطلاعات Extent ها هستند.
اگر چندین بار هم از اطلاعات موجود در SQL سرور بصورت Differential بکاپ بگیرید در نهایت همه تغییراتی که از ابتدای آخرین Full Backup بر روی Database انجام شده اند Backup گرفته خواهند شد.

زمانیکه می خواهید Backup ای از SQL سرور خود را بازیابی کنید کافیست ضمن بازگردانی آخرین Full Backup فقط اطلاعات موجود در آخرین Differential Backup را نیز بازیابی کنید تا اطلاعات کامل بازیابی شود

جیسجو = بهترین روش رسیدن به پاسخ است .

shahin69
پنج شنبه 31 اردیبهشت 1394, 19:26 عصر
دوست عزیز اینا رو خوندم ولی جوابم و نگرفتم

1)من به صورت زمانبندی full بکاپ بگیرم مثلا روزی یه بار.

2) و به صورت زمانبندی Differential بکاپ تعریف کنم مثلا ساعت 8 صبح تا 4 بعد از ظهر به فاصله یک ساعت یه بکاپ Differential بگیره.

بعد بخوام restor کنم (در صورت بروز مشکل) اول اخرین full بکاپ برگردونم و بعدش اخرین Differential بکاپ گرفته شده بعد از اخرین full بکاپ؟

یعنی دو تا job ایجاد کنم این روش من درسته؟ اصلا اصولی هست؟

درسته یا نه؟

pezhvakco
شنبه 02 خرداد 1394, 10:34 صبح
بعد بخوام restor کنم (در صورت بروز مشکل) اول اخرین full بکاپ برگردونم و بعدش اخرین Differential بکاپ گرفته شده بعد از اخرین full بکاپ؟
چرا دوبار Full BackUp رو برگردونید.

shahin69
شنبه 02 خرداد 1394, 16:25 عصر
یه full بکاپ نه دو تا
نه منظورم اول full backup برمیگردونم بعدش اخرین Differential بکاپ گرفته شده درسته؟

pezhvakco
شنبه 02 خرداد 1394, 16:41 عصر
بله = همین روش شما درست است .