# پایگاه‌های داده > SQL Server > T-SQL >  اموزش پشتیبان گیری و ترمیم بانک اطلاعاتی در اس کیو ال سرور 2008

## oliya24

انواع پشتیبان گیری در *اس کیو ال سرور:*
*1:پشتیبان گیری کامل :از فایلهای بانک اطلاعاتی پشتیبان تهیه میکند که حاوی تمامی تراکنشهای انجام شده است از قبل از انتقال داده ها به نوار اس کیوال تضمین میکند که داده های موجود در سابقه تراکنشها به بانک اطلاعاتی تحویل داده بشن*

*2:پشتیبان گیری از سابقه تراکنشها:فقط از سابقه تراکنشها پشتیبان تهیه میکند اما این پشتیبان باید به عنوان بخشی از عملیات پشتیبان گیری کامل باشد* 
*3:پشتیبان گیری جززئی بانک:از فایلهایی از بانک پشتیبان تهیه میکند که از اخرین تاریخ پشتیبان گیری در انها تغییراتی ایجاد شده است*
*4:پشتیبان گیری از فایل یا گروه فایلها: موجب پشتیبان گیری از فایلها یا گروههای فایل میشود* 
*5:پشتیبان گیری عکس فوری:موجب پشتیبان گیری عکس فوری میشود که سریعتر از سایر روشهای دیگر است و با نرم افزار و سخت افزار خاصی صورت میگیرد*
*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*
*دستگاه های پشتیبان گیری:اولین مرحله پشتیبان گیری ایجاد دستگاه پشتیبان گیری به چند روش زیر میباشد* 
*1:پشتیبان گیری بر روی یک دستگاه*
*2:پشتیبان گیری بر روی چند دستگاه*
*3:قرار دادن پشتیبان بر روی یک دستگاه*
*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*
*1:پشتیبان گیری بر روی یک دستگاه:برای حالتی به کار میرود که بخواهید اطلاعات را بر روی یک دستگاه قرار دهید این روش تعیین دستگاه پشتیبان به صورت پیش فرض انتخاب میشود*
*2:پشتیبان گیری بر روی چند دستگاه:میتوانید به طور همزمان اطلاعات را به چند دستگاه پشتیبان گیری ارسال کند این روش در حالتی مفید است که بخواهید اطلاعات بانک اطلاعاتی را بر روی چند نوار قرار دهید برای این منظور باید چند نوار خوان را به سرویس دهنده متصل کنید . در این نوع پشتیبان گیری میتوانید حداکثر 64 دستگاه مجاز را تعیین کنید*
*3:قرار دادن چندین پشتیبان بر روی یک دستگاه:در این روش میتوانید اطلاعات چندین پشتیبان را بر روی یک دستگاه قرار دهید و بیشتر برای تهیه پشتیبان بر روی نوار به کار میرود*
*ایجاد دستگاه پشتیبان گیری: برای اینکه بتوانید از بانکهای اطلاعاتی پشتیبان تهیه کنید ابتدا باید یک دستگاه پشتیبان تهیه کنید تا پشتیبان بانک اطلاعاتی رادر ان قرار دهید 2 راه برای این کار وجود دارد*
*استفاده از رویه ذخیره شده*
*2:استفاده از ویزارد اس کیوال سرور*
*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@  @@@*
*برای شروع با ویزارد کار میکنم این بدان معنا نیست که روش کد نویسی رو نگم اون رو هم میگم*
*1:بر روی پوشه SERVER OBJECT دابل کلیک کنید تا اشیای این  پوشه را ببینید*
*2:بر روی شیBACKUP DEVICES کلیک راست کرده و گزینه NEW BACKUP DEVICES را بزنید*
*3:پنجره ای باز میشه به نام BACK UP DEVICES در مقابل DEVICE NAME نام دلخواه دستگاه پشتیبان را تعیین کنید و در مقابل FILE نام فایلی را وارد نمایید که اطلاعات پشتیبان گیره شده باید در ان قرار گیرد*
*4:دکمه OK را کلیک کنید* 
*بدین تر تیب دستگاه پشتیبان را توانستید ایجاد کنید*

----------


## oliya24

خوب حالا روش بالا رو با کد نویسی میگم :
*یکی دیگر از روشهای اضافه کردن دستگاه پشتیبان استفاده از رویه ذخیره شده SP_ADUMPDEVICE است این رویه به صورت زیر بکار میرورد*

SP_ADDUMPDEVICE 'DISK','MYDISKDUMP','C:\DUMP1.BAK
این دستورات یک دستگاه پشتیبان گیری به نام MYDISKDUMP ایجاد میکند که مسیر فیزیکیش هم مشخصه

----------


## oliya24

برای حذف دستگاه پشتیبان باید از دستور زیر استفاده کرد:
exec sp_dropdevice 'mydiskdump'

----------


## oliya24

کنترل صحت داده های بانک اطلاعاتی:
*بعد از ایجاد یک دستگاه پشتیبان باید بتوانید از بانک اطلاعاتی پشتیبان تهیه کنید ایا این پشتیبانی که تهیه میکنید درست است یا نه؟ممکن است اطلاعات بانک اطلاعاتی خراب باشد بنابراین برای تهیه پشتیبان از اطلاعات خراب ارزشی ندارد برای رفع این مشکل میتوان صحت اطلاعات را دربانک اطلاعاتی بررسی نمود برای این منطور میتوانید از دستور dbcc checkdb به صورت زیر استفاده کرد به صورت زیر* 
dbcc checkdb
دقت کنید که این دستور داده های بانک اطلاعاتی فعلی را چک میکند 
*دستور زیر هم بانک اطلاعاتی فعلی را چک میکند بدون انکه پیام های خطا را نمایش دهد*
dbcc checkdb with no_infomsgg

----------


## oliya24

خوب مثل اینکه داره استقبال میشه پس ادامه میدم
من کلی تاپیک اموزشی تو تالار دیگه میزنم هر چی میگم دوستان شرکت کنن هیچ خبری نمیشه ولی اینجا رو ادامه میدم

----------


## oliya24

دستور dbcc checkcatalog
این دستور یکپارچگی ارجاعی را برای جدولهای سیستمی کنترل میکند و به صورت زیر به کار میرود:
dbcc checkcatalog
( database name
[with no_infomsgs]

دستور زیر راببینید
dbcc checkcatalog
با ارجای این دستور یکپارچکی ارجاع جدولهای سیستمی بانک اطلاعاتی فعال فعلی کنترل میشود 
حال به دستورات زیر بنگرید
dbcc checkcatalog('bb')
این دستورات یکپارچکی ارجاعی جدول بانک اطلاعاتی bb را کنترل میکند

----------


## oliya24

دستور dbcc checktable
این دستور یکپارچکی ارجاع را مانند دستور پیشین dbcc checkdb برای جداول انجام میدهد به مثال زیر توجه کنید 
dbcc checktable('n')
این دستور صحت یکپارچگی ارجاع اطلاعات جدول n را از بانک اطلا عاتی فعلی بررسی میکند و یه خروجی به شما میدهد 
دیگه وقت پشتیبان گیره

----------


## oliya24

*پیاده سازی پشتیبان گیری:*
*به 2 روش میتوان از بانک اطلاعاتی پشتیبان تهیه نمود* 
*1:استفاده از ویزارد*
*2:استفاده از دستور backup database*
*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@  @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*
*مورد اول استفاده از ویزارد* 
*برای تهیه پشتیان مراحل زیر را انجام دهید:*
*1:بر روی بانک اطلاعاتی مورد نظر راست کلیک کنید و از منویی که ظاهر میشود گزینه task و بعد از منویی که باز شد گزینه backup را اجرا کنید تا پنجرها ی موسوم به back up database طاهر شود در این پنجره با گزینه هایی بر خورد میکنیم که به قرار زیر هستند* 
*1:database : نام بانک اطلاعاتی را تعیین میکند که باید از ان پشتیبان تهیه شود* 
*2:recovery model: مدل ترمیم اطلاعات را تعیین میکند*
*3:back up type :نوع پشتیبان گیری را تعیین میکند که میتواند full کامل -وdifferential تغییرات باشد*
*4:data base :تعیین میکند که پشتیبان گیری از بانک اطلاعاتی انجام شود* 
*5:files and filesgroups:تعیین میکند که پشتیبان گیری از فایل وگروهی از فایلها انجام شود*
*6:name :نام پشتیبان را تعیین میکند* 
*7:description:شرح پشتیبان را تعیین میکند*
*8:backup set will expire:زمان انقضای پشتیبان را تعیین میکند که after ان به روز تعیین میکند ولی گزینه on بیان میکند که پشتیبان تا یک تاریخ خاصی اعتبار دارد* 
*9:back to :دستگاه پشتیبان گیری را تعیین میکند که میتواند دیسک یا نوار باشد*
*10:add:برای اضافه کردن فایل پشتیبان یا دستگاه پشتیبان گیری به کار میرود*
*11:remove:برای حذف فایل یا دستگاه پشتیبان گیری به کار میرود*
*ادامه بحث پشتیبان گیری از این قسمت شروع خواهد شد:*
*2:دکمه add را کلیک کنید تا پنجره انتخاب مقصد پشتیبان ظاهر شود*
*3:در این پنجره گزینه backup device را انتخاب کنید و دکمه ok را کلیک کنید تا پنجره back up database برگردد* 
*4:در پنجره back up database دکمه ok را کلیک کنید تا پس از چند لحظه پنجره ای به عنوان microsoft sql server managment studio ظاهر شود*
*5: در این پنجره گزینه ok را کلیک کنید تا به sql server برگردید* 
*پشتیبان گیری گزینه های زیادی دارد که واقعا حوصله میخواد و وقت من دیگه الان توضیحشون نمیدم سعی میکنم بعدا توضیح بدم امیدوارم که این مطالب برای شما دوستان گرامی مفید باشه* 
*مبحث بعد پشتیبان گیری با دستورات sql میباشد*

----------


## taha6206

بسیار عالی

----------


## hassanzarabi

با سلام و خسته نباشید
بسیار خوب و جامع بود دست شما درد نکنه

----------

