خرید بک لینک

مقدمه

در نرم افزار SQL Server به دو روش به صورت دستی و به صورت خودکار امکان پشتیبانگیری از دیتابیس وجود دارد. در ادامه به

شرح جزئیات در خصوص نحوه انجام بکاپگیری به این دو روش پرداخته میشود.

بکاپگیری از SQL به صورت دستی (Manual)

عملیات بکاپگیری به صورت دستی را میتوان به دو روش زیر انجام داد:

روش اول

1. در ابتدا پنجره SQL Server Management Studio را باز کرده و در قسمت Object Explorer با ورود به بخش databases، بر روی

دیتابیس موردنظر کلیک راست کرده و از منوی Task گزینه Backup را انتخاب کنید.

SQL server backup task

2. با توجه به موارد مشخص شده در تصویر زیر نوع بکاپ را مشخص کنید و سپس گزینه Add را انتخاب کنید

2 SQL server backup database general properties

نکته قابل توجه اینکه جهت بکاپگیری از Transaction Logها و محتوای Files and Groups میبایست Recovery Model دیتابیس

مورد نظر، در حالت Full قرار داشته باشد. جهت تغییر Recovery Model، بر روی دیتابیس موردنظر Properties گرفته و در تب Option

گزینه Recovery Model را تغییر میدهیم.

3 SQL server backup recovery model

3. در ادامه میبایست محل ذخیره و نام بکاپ را مشخص کرد.

4 SQL server backup file path

4. توجه داشته باشید فایل بکاپ را حتما میبایست با پسوند bak ذخیره نمایید. در ادامه بر روی دکمه Ok کلیک نمایید.

5 SQL server backup destination

5. درصورتیکه بکاپگیری با موفقیت انجام شود صفحه ی زیر را مشاهده خواهید کرد:

6 SQL server backup completion message

روش دوم

در این روش میتوان از طریق T-SQL عملیات بکاپگیری را انجام داد. در ادامه روش بکاپگیری به روش T-SQL برای انواع روش های

بکاپگیری شرح داده میشود.

انجام عملیات Full Backup به روش T-SQL

1. وارد کنسول SQL Server Management Studio شوید و روی گزیه New Query در بالای صفحه کلیک کنید.

SQL server new query

2. دستور زیر را وارد کرده و روی گزینه Execute کلیک کنید (دستور زیر دیتابیس BinaDB را در پوشه :c با نام BinaDB-Backup-Test.BAK در

حالت Full Backup ذخیره میکند).

BACKUP DATABASE BinaDB TO DISK = 'C:BinaDB-Backup-Test.BAK'

GO

SQL server full backup with query

توجه داشته باشید پس از اجرای Query، پیغام "Query Executed Successfully" که بیانگر اجرای موفقیت آمیز دستور بر روی دیتابیس میباشد،

نمایش داده شود.

انجام عملیات Differential backup به روش T-SQL

1. مانند قبل، وارد کنسول SQL Server Management Studio شوید و روی گزینه New Query در بالای صفحه کلیک کنید.

2. دستور زیر را وارد کرده و روی گزینه Execute کلیک کنید (دستور زیر دیتابیس BinaDB را در پوشه :c با نام

BinaDB-Backup-Test.DIF به روش Differential Backupذخیره میکند).

BACKUP DATABASE BinaDB TO DISK = 'C:BinaDB-Backup-Test.DIF' WITH DFFERENTIAL

GO

9 SQL server differential backup with query

توجه داشته باشید پس از اجرای Query، پیغام "Query Executed Successfully" که بیانگر اجرای موفقیت آمیز دستور بر روی دیتابیس میباشد،

نمایش داده شود.

انجام عملیات File Backup به روش T-SQL

در رابطه با ارائه توضیحات در خصوص این روش بکاپگیری، برای مثال دیتابیسی با نام BinaDB ایجاد کردهایم که این دیتابیس دارای دو

Data File با نامهای "BinaDB" و "BinaDB2" و یک Log File است. مراحل زیر نشان میدهد چگونه میتوان از هر File به صورت جداگانه

بکاپ تهیه کرد.

1. همانند قبل، وارد کنسول SQL Server Management Studio شوید و روی گزینه New Query در بالای صفحه کلیک کنید.

2. دستور زیر را وارد کرده و روی گزینه Execute کلیک کنید (دستور زیر دو فایل BinaDB1 و BinaDB2 را از دیتابیس

BinaDB در پوشه :C را به ترتیب با نامهایBinaDB_BinaDB1.FIL و BinaDB_BinaDB2.FIL به روش File Backup ذخیره میکند).

BACKUP DATABASE BinaDB FILE = 'BinaDB1'

TO DISK = 'C:BinaDB_BinaDB1.FIL'

GO

BACKUP DATABASE BinaDB FILE = 'BinaDB2'

TO DISK = 'C:BinaDB_BinaDB2.FIL'

GO

10 SQL server file backup with query

توجه داشته باشید پس از اجرای Query، پیغام "Query Executed Successfully" که بیانگر اجرای موفقیت آمیز دستور بر روی دیتابیس میباشد،

نمایش داده شود.

انجام عملیات FileGroup Backup به روش T-SQL

1. وارد کنسول SQL Server Management Studio شوید و روی گزینه New Query در بالای صفحه کلیک کنید.

2. دستور زیر را وارد کرده و روی گزینه Execute کلیک کنید (دستور زیر FileGroup موجود با نام ReadOnly را از دیتابیس

BinaDB در پوشه :C را با نامBinaDB_ReadOnly.FLG به روش FileGroup Backup ذخیره میکند).

BACKUP DATABASE BinaDB FILEGROUP = 'ReadOnly'

BACKUP DATABASE BinaDB FILEGROUP = 'ReadOnly'

یGO

11 SQL server file group backup with query

توجه داشته باشید پس از اجرای Query، پیغام "Query Executed Successfully" که بیانگر اجرای موفقیت آمیز دستور بر روی دیتابیس میباشد،

نمایش داده شود.

انجام عملیات Transaction Log Backup به روش T-SQL

1. وارد کنسول SQL Server Management Studio شوید و روی گزینه New Query در بالای صفحه کلیک کنید.

2. دستور زیر را وارد کرده و روی گزینه Execute کلیک کنید (دستور زیر Transaction Logهای دیتابیس BinaDB را در پوشه :C با

نام BinaDB-TRNBackup-Test.TRNذخیره میکند).

BACKUP LOG BinaDB TO DISK = 'C:BinaDB-TRNBackup-Test.TRN'

GO

12 SQL server transactionlog backup with query

توجه داشته باشید پس از اجرای Query، پیغام "Query Executed Successfully" که بیانگر اجرای موفقیت آمیز دستور بر روی دیتابیس میباشد،

نمایش داده شود.

انجام عملیات Partial Backp به روش T-SQL

در رابطه با ارائه توضیحات در خصوص این روش بکاپگیری، برای مثال دیتابیسی با نام BinaDB ساخته ایم که سه Data File و یک

Log File دارد. دو تا از Data Fileها به صورت Primary FileGroup و یکی از آنها به صورت Read-Only FileGroup میباشد. دستور زیر

نشان میدهد چگونه میتوان یک بکاپ جزئی ایجاد کرد.

ایجاد Full Partial Backup

همانند روشهای قبل، بر روی New Query کلیک کنید و پس از وارد کردن دستورات زیر بر روی Execute کلیک کنید.

BACKUP DATABASE BinaDB READ_WRITE_FILEGROUPS

TO DISK = 'C:BinaDB_Partial.BAK'

GO

13 SQL server partial full backup with query

ایجاد Differential partial Backup

در این روش نیز مانند روشهای قبل، بر روی New Query کلیک کنید و پس از وارد کردن دستورات زیر بر روی Execute کلیک کنید.

BACKUP DATABASE BinaDB READ_WRITE_FILEGROUPS

TO DISK = 'C:BinaDB_Partial.DIF'

WITH DIFFERENTIAL

GO

14 SQL server differential partial backup with query

توجه داشته باشید پس از اجرای Query، پیغام "Query Executed Successfully" که بیانگر اجرای موفقیت آمیز دستور بر روی دیتابیس میباشد،

نمایش داده شود.

بکاپگیری از SQL به صورت خودکار (Maintenance Plan)

1. برای استفاده از این روش بکاپگیری میبایست سرویس SQL Server Agent در حالت Ruing قرار داشته باشد. لذا برای بررسی

اینکه سرویس مذکور در حالت Ruingقرار دارد یا خیر، هم میتوان وارد کنسول Services.msc شد و وضعیت سرویس را بررسی کرد

(در صورتی که سرویس Stop بود آن را Start کنید) و هم می توانید از طریق کنسول SQL Server Management Studio پس از اتصال

به Instance موردنظر، در منوی Object Explorer مشاهده کرد که آیا سرویس فعال و در حال اجرا است یا خیر؟

15 SQL Server Agent different state

2. پس از اینکه اطمینان حاصل کردید سرویس SQL Server Agent در حال اجرا میباشد، از منوی Object Explorer گزینه Management

را انتخاب و در زیرمجموعه آن گزینهMaintenance Plan را انتخاب کنید و با کلیک راست بر روی آن وارد Maintenance Plan Wizard شوید.

16 SQL server Maintenance Plan Wizard

3. هنگامی که پنجره Pop-Up مربوط به Maintenance Plan Wizard باز شد، در اولین صفحه، گزینه Next انتخاب میکنیم.

17 SQL server Maintenance Plan Wizard pop up

4. در صفحه بعد با انتخاب نام Plan و ارائه توضیحات در قسمت Description، گزینه Change را جهت انجام تنظیمات Backup Plan انتخاب

کنید.

18 SQL server Maintenance Plan Wizard description

5. تنظیمات موردنظر را (شامل تنظیمات زمانی و نوع Plan و شرایط وقوع آن) جهت ایجاد برنامه بکاپ وارد کنید.

19 SQL server Maintenance job schedule properties

6. در مرحله بعد، نوع عملیات Full یا Differential یا Transaction Log را انتخاب کنید.

20 SQL server Maintenance maintenance tasks

7. پس از آن از قسمت (Database(s، دیتابیس (های) موردنظر جهت اجرای Plan را انتخاب کنید و محل ذخیره فایلهای Backup را مشخص

کنید.

21 SQL server Maintenance plan wizard define back up database task

8. در نهایت تمامی تنظیمات انجام شده را مشاهده خواهید کرد که با فشردن دکمه Finish عملیات نهایی شده و Plan موردنظر ایجاد میگردد.

22 SQL server Maintenance plan wizard complete

روش بازگردانی (Restore) اطلاعات

جهت بازگردانی اطلاعات از یک Database که قبلا از آن Backup تهیه شده است به روش زیر عمل کنید:

1. پس از اتصال به کنسول SQL Server Management Studio روی دیتابیس کلیک راست کرده و از منوی Task گزینه Resote و سپس

Databases را انتخاب کنید.

23 SQL server restore database

2. از قسمت Source For Restore گزینه From Device را انتخاب کرده و فایل Backupی که پیشتر تهیه شده است را انتخاب کنیم.

24 SQL server restore database from device

3. جهت جایگزین (Replace) شدن Database از منوی Options گزینه Overwrite the existing database را انتخاب کنید.

25 SQL server restore database overwrite the existing database option

لازم به ذکر است در نسخه SQL Server 2014 و بالاتر، جهت مشخص کردن محل ذخیرهی جدید برای فایلهای دیتابیس، از تب Files بر

روی گزینه Relocate all files to folder کلیک کنید و محل ذخیرهای جدید برای Data File Folderها و Log File Folderها تعیین کنید.

26 SQL server restore all files database

نکات قابل توجه در بکاپگیری از SQL

پیشنهاد میشود به دلیل حجم بالای تراکنشها در SQL Server، زمان انجام عملیات بکاپ خودکار، خارج از ساعات کاری باشد، برای مثال ساعات

پایانی روز.

پیشنهاد میشود فایلهای بکاپ بر روی سرور و یا دیسک دیگری ذخیره شود تا در صورت بروز هرگونه اشکال در سرور SQL، فایلهای بکاپ از

بین نرود.

جهت انجام عملیات بکاپگیری، یوزر میبایست دسترسی Sysadmin را به عنوان Server Roles و دسترسیهای db_owner و

db_backupoperator را به عنوان Database Roles داشته باشد. بدین منظور در نرمافزار SQL Server Management Studio

پس از اتصال به Instance به مسیر Security و سپس Login رفته و با کلیک راست بر روی یوزر موردنظر گزینه Properties را انتخاب مکنید

و تنظیمات را مطابق زیر اعمال نمایید.

27 SQL server sysadmin privilege for backup

28 SQL server db backupoperator db owner

برچسب: نویسنده: امیر اکبری‌پور تاريخ: سه شنبه 10 مرداد 1396 ساعت: 18:25

صفحه بندی