مقدمه
بکاپگیری از دیتابیس نهتنها یک روش استاندارد، بلکه یکی از الزامات اساسی برای حفظ تداوم کسبوکار (Business Continuity) به شمار میرود. از دست دادن اطلاعات میتواند در هر لحظه و به دلایل مختلفی مانند خرابی سختافزار، خطای انسانی، یا حملات سایبری رخ دهد. در این مقاله، به صورت جامع و گام به گام، روشهای مختلف بکاپگیری از دیتابیس در SQL Server را آموزش خواهیم داد.
بخش اول: مفاهیم پایه و آشنایی با انواع بکاپ
قبل از شروع بکاپگیری، لازم است با انواع بکاپ و مدلهای ریکاوری آشنا شوید، زیرا این مفاهیم تأثیر مستقیمی بر استراتژی بکاپ شما دارند.
| نوع بکاپ | توضیحات | کاربرد |
| Full Backup (بکاپ کامل) | کپی کامل از کل دیتابیس در یک لحظه مشخص. پایه و اساس سایر انواع بکاپ است | ستون فقرات استراتژی بکاپ. اولین باری که بکاپ میگیرید، حتماً باید از نوع Full باشد. |
| Differential Backup (بکاپ تفاضلی) | فقط شامل تغییراتی است که از آخرین بکاپ کامل به بعد در دیتابیس اعمال شدهاند | کاهش حجم بکاپ و افزایش سرعت. معمولاً به صورت روزانه اجرا میشود. |
| Transaction Log Backup (بکاپ لاگ تراکنش) | شامل تمام تراکنشهایی است که از آخرین بکاپ لاگ انجام شدهاند. امکان بازیابی نقطهای (Point-in-Time) را فراهم میکند | مناسب برای سناریوهایی که نمیتوانید هیچ دادهای را از دست بدهید. هر 15 تا 30 دقیقه یکبار اجرا میشود. |
بخش دوم: بکاپگیری با SQL Server Management Studio (SSMS)
سادهترین روش برای بکاپگیری، استفاده از محیط گرافیکی SSMS است که توسط مایکروسافت توصیه میشود.
مرحله 1: اتصال به SQL Server و انتخاب دیتابیس
SQL Server Management Studio را اجرا کنید.
به سرور مورد نظر متصل شوید.
در پنجره Object Explorer، بخش Databases را باز کنید.
مرحله 2: شروع فرآیند بکاپ
روی دیتابیس مورد نظر کلیک راست کنید.
از منوی Tasks، گزینه Back Up... را انتخاب کنید.
مرحله 3: تنظیمات بکاپ
پنجره Back Up Database باز میشود. تنظیمات زیر را انجام دهید:
| گزینه | مقدار پیشنهادی | توضیح |
| Backup type | Full | برای اولین بکاپ، حتماً Full را انتخاب کنید. بهتر است همیشه Full بکاپ بگیرید. |
| Destination | Disk | مقصد ذخیره سازی بکاپ |
| Destination path | یک مسیر معتبر | مثلا C:\Program Files\Microsoft SQL Server\MSSQL\Backup\MyDB.bak |
مرحله 4: حذف مقصد پیشفرض و افزودن مقصد جدید
در بخش Destination، روی مسیر پیشفرض کلیک کرده و Remove را بزنید.
روی Add کلیک کنید.
مسیر و نام فایل دلخواه (با پسوند .bak) را وارد کرده و OK را بزنید.
مرحله 5: اجرای بکاپ
روی دکمه OK کلیک کنید. پس از اتمام موفقیتآمیز، پیامی مبنی بر موفقیتآمیز بودن عملیات بکاپ نمایش داده میشود.
بخش سوم: بکاپگیری با دستورات T-SQL
برای خودکارسازی و مدیریت پیشرفتهتر بکاپها، استفاده از دستورات T-SQL در محیط Query Editor توصیه میشود.
دستور بکاپ کامل (Full Backup):
BACKUP DATABASE [YourDatabaseName]
TO DISK = 'D:\Backups\YourDatabaseName_Full.bak'
WITH FORMAT,
MEDIANAME = 'YourDatabaseBackup',
NAME = 'Full Backup of YourDatabaseName';
توضیح پارامترها:
TO DISK: مسیر ذخیره فایل بکاپ
WITH FORMAT: یک مجموعه رسانه جدید ایجاد میکند (مراقب باشید فایل قدیمی را بازنویسی میکند)
MEDIANAME: نام مجموعه رسانه برای شناسایی آسانتر
NAME: نام این بکاپ خاص
اجرا از طریق خط فرمان (Command Line):
sqlcmd -S SERVERNAME -Q "BACKUP DATABASE YourDatabaseName TO DISK='D:\Backups\YourDatabaseName_Full.bak' WITH FORMAT"