بازیابی دیتابیس با نام و مکان جدید در sql

بازیابی دیتابیس با نام و مکان جدید در sql

گاهی لازمه تا دیتابیسی را با نام جدید و در مکانی جدید بازیابی کنیم. معمولا زمان بازیابی اگر دیتابیسی به همان نام وجود داشته باشد عملیات restore  بر روی همان دیتابیس رخ میدهد. اما گاهی لازم است که به نوعی یک کپی از دیتابیس موجود را با نامی دیگر داشته باشیم تا تغییرات را در آن اعمال کنیم و دیتابیس اصلی با همان نام قبلی دست نخورده باقی بماند. این کار معمولا زمانی مفید است که ما پروژه ای جدید داریم که بانک اطلاعاتی آن مشابه یک پروژه دیگر است و فقط نیاز به کمی تغیبرات دارد. پس برای اینکه نسخه اصلی را تغییر ندهیم یک کپی از آن با نام جدید ایجاد میکنیم

کد زیر نحوه انجام این کار را در SQL Server نشان میدهد

ابتدا با دستور زیر شروع میکنیم

RESTORE FILELISTONLY FROM DISK='c:\MasterDataBase.bak'

حالا با دستورات زیر به sql Servre  میگوییم که دیتابیس را با اطلاعات و مشخصات جدید بازیابی کند

RESTORE DATABASE MyTempCopy FROM DISK='c:\MasterDataBase.bak'
WITH 
   MOVE 'MasterDataBase' TO 'c:\NewDataBase.mdf',
   MOVE 'MasterDataBase_log' TO 'c:\NewDataBase_log.ldf'
نامی که به عنوان دیتابی جدید در دستور بالا داده شده نباید در SQl Server ایجاد شده باشد ایجاد و بازیابی اطلاعات در آن توسط دستورات بالا انجام خواهد شد.

مرتضی جنگجو

برنامه نویس fullstack با بیش از 14 سال سابقه کار و همکاری در توسعه و پیاده سازی نرم افزارهای تحت وب با تکنولوژی Net. در شرکتهای بزرگ ایرانی، هلندی، فنلاندی و ترکیه

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

دیدگاه کاربران