استعادة قواعد بيانات SQL Server على أجهزة Azure الظاهرية
مقالة
توضح هذه المقالة كيفية استعادة قاعدة بيانات SQL Server التي يتم تشغيلها على جهاز Azure الظاهري (VM) الذي قامت خدمة Azure Backup بنسخه احتياطياً إلى مخزن Azure Backup Recovery Services.
يمكن لـ Azure Backup استعادة قواعد بيانات SQL Server التي تعمل على أجهزة Azure الظاهرية على النحو التالي:
قم بالاستعادة إلى تاريخ أو وقت محدد (إلى الثاني) باستخدام النسخ الاحتياطي للسجل. يحدد Azure Backup النسخ الاحتياطي التفاضلي الكامل المناسب وسلسلة نسخ السجل الاحتياطية المطلوبة للاستعادة بناءً على الوقت المحدد تلقائياً.
قم باستعادة نسخة احتياطية كاملة أو تفاضلية محددة لاستعادة نقطة استرداد محددة.
استعادة المتطلبات الأساسية
قبل استعادة قاعدة بيانات، لاحظ ما يلي:
يمكنك استعادة قاعدة البيانات إلى مثيل SQL Server في نفس منطقة Azure.
يجب أن يكون الخادم الوجهة مسجلاً في نفس المخزن مثل المصدر. إذا كنت ترغب في استعادة النسخ الاحتياطية إلى مخزن مختلف، فمكن Cross Subscription Restore.
إذا كان لديك مثيلات متعددة قيد التشغيل على الخادم، فيجب أن تكون جميع المثيلات قيد التشغيل. دون القيام بذلك لن يظهر الخادم في قائمة الخوادم الوجهة لاستعادة قاعدة البيانات إليها. لمزيد من المعلومات، راجع the troubleshooting steps.
لتهيئة جميع قواعد بيانات النظام (النموذج، msdb)، أوقف خدمة SQL Server Agent قبل تشغيل خاصية الاستعادة.
أغلق أي تطبيقات قد تحاول الاتصال بأي من قواعد البيانات هذه.
بالنسبة لقواعد البيانات الرئيسية، لا يتم دعم خيار الموقع البديل للاستعادة. نوصي باستعادة قاعدة البيانات الرئيسية باستخدام الخيار استعادة كملفات ، ثم الاستعادة باستخدام T-SQL الأوامر.
بالنسبة إلى و، يتم دعم خيار الموقع البديل للاستعادة فقط عندما يختلف اسم قاعدة البيانات المستعادة عن اسم قاعدة البياناتmodelالهدف.msdb إذا كنت تريد استعادة نفس الاسم باستخدام قاعدة البيانات الهدف، نوصيك بالاستعادة باستخدام الخيار استعادة كملفات ، ثم الاستعادة باستخدام T-SQL الأوامر.
استعادة قاعدة بيانات
للاستعادة، تحتاج إلى الأذونات التالية:
أذونات عامل تشغيل النسخ الاحتياطي في المخزن الذي تنفذ فيه عملية الاستعادة.
وصول المُشارك (الكتابة) إلى الجهاز الظاهري المصدر الذي يتم نسخه احتياطيًا.
وصول المساهم (الكتابة) إلى الجهاز الظاهري الهدف:
إذا كنت تنفذ عملية الاستعادة على نفس الجهاز الظاهري، فيكون ذلك هو الجهاز الظاهري المصدر.
إذا كنت تنفذ عملية الاستعادة على موقع بديل، فيكون ذلك هو الجهاز الظاهري الهدف.
الاستعادة كما يلي:
في مدخل Microsoft Azure، انتقل إلى Backup center وانقر فوق Restore.
حدد SQL في Azure VM كنوع مصدر البيانات، وحدد قاعدة بيانات لاستعادتها، ثم انقر فوق Continue.
في Restore Configuration، حدد مكان (أو كيفية) استعادة البيانات:
الموقع البديل: استعادة قاعدة البيانات إلى موقع بديل والاحتفاظ بقاعدة البيانات المصدر الأصلية.
الكتابة فوق قاعدة البيانات: استعادة البيانات إلى نفس مثيل SQL Server كالمصدر الأصلي. يقوم هذا الخيار بتجاوز قاعدة البيانات الأصلية.
هام
إذا كانت قاعدة البيانات المحددة تنتمي إلى مجموعة من مجموعات قابلية وصول عالية التوفر AlwaysOn المتوفرة، فلن يسمح SQL Server بالكتابة فوق قاعدة البيانات. يتوفر فقط الموقع البديل.
الاستعادة كملفات: بدلاً من الاستعادة كقاعدة بيانات، قم باستعادة ملفات النسخ الاحتياطي التي يمكن استردادها كقاعدة بيانات لاحقاً على أي جهاز حيث توجد الملفات باستخدام SQL Server Management Studio.
الاستعادة إلى موقع بديل
في قائمة Restore Configuration، ضمن Where to Restore، حدد Alternate Location.
حدد اسم SQL Server والمثيل الذي تريد استعادة قاعدة البيانات إليه.
في المربع Restored DB Name أدخل اسم قاعدة البيانات الهدف.
إن أمكن، حدد Overwrite if the DB with the same name already exists on selected SQL instance.
لا تتوفر الاستعادة في الوقت المحدد إلا للنسخ الاحتياطية للسجلات الخاصة بقواعد البيانات الموجودة في وضع الاسترداد الكامل والمسجل المجمع.
استرداد كملفات
لاستعادة بيانات النسخة الاحتياطية كملفات .bak بدلاً من قاعدة بيانات، اختر Restore as Files. بمجرد تفريغ الملفات إلى مسار محدد، يمكنك نقل هذه الملفات إلى أي جهاز تريد استعادتها إليه كقاعدة بيانات. نظراً لأنه يمكنك نقل هذه الملفات إلى أي جهاز، يمكنك الآن استعادة البيانات عبر الاشتراكات والمناطق.
ضمن Where and how to Restore، حدد Restore as files.
حدد اسم SQL Server الذي تريد استعادة ملفات النسخ الاحتياطية إليه.
في Destination path on the server أدخل مسار المجلد على الخادم المحدد في الخطوة 2. هذا هو الموقع الذي ستقوم الخدمة فيه بتفريغ جميع ملفات النسخ الاحتياطي الضرورية. بشكل عام، مسار مشاركة شبكة اتصال أو مسار مشاركة ملف Azure المحملة عند تحديد مسار الوجهة، يتيح الوصول إلى هذه الملفات بسهولة بواسطة أجهزة أخرى في نفس الشبكة أو مع نفس مشاركة ملف Azure المحملة عليها.
ملاحظة
لاستعادة ملفات النسخ الاحتياطي لقاعدة البيانات في Azure File Share المُثبت على الجهاز الظاهري المسجل الهدف، تأكد من أن NT AUTHORITY\SYSTEM لديه حق الوصول إلى مشاركة الملف. يمكنك تنفيذ الخطوات الواردة أدناه لمنح أذونات القراءة/الكتابة إلى AFS المثبت على الجهاز الظاهري:
تشغيل PsExec -s cmd للدخول في NT AUTHORITY\SYSTEM shell
تنفيذ cmdkey /add:<storageacct>.file.core.windows.net /user:AZURE\<storageacct> /pass:<storagekey>
تحقق من الوصول باستخدام dir \\<storageacct>.file.core.windows.net\<filesharename>
ابدأ عملية الاستعادة كملفات من Backup Vault إلى \\<storageacct>.file.core.windows.net\<filesharename> كمسار
يمكنك تنزيل PsExec من صفحة Sysinternals.
عند إجراء استعادة نقطة زمنية لقاعدة بيانات SQL باستخدام استعادة كملفات، فإنه سيتم تخزين جميع نقاط الاسترداد من النسخ الاحتياطي الكامل إلى نقطة زمنية محددة. ثم يمكنك الاستعادة باستخدام هذه الملفات كقاعدة بيانات على أي جهاز موجود باستخدام SQL Server Management Studio.
الاستعادة إلى نقطة زمنية معينة
إذا قمت بتحديد Logs (Point in Time) كنوع استعادة، فقم بما يلي:
ضمن Restore Date/Time، افتح التقويم. في التقويم، يتم عرض التواريخ التي تحتوي على نقاط استرداد بخط عريض، ويتم تمييز التاريخ الحالي.
حدد تاريخاً يحتوي على نقاط استرداد. لا يمكنك تحديد التواريخ التي لا تحتوي على نقاط استرداد.
بعد تحديد التاريخ، يعرض الرسم البياني للخط الزمني نقاط الاسترداد المتاحة في نطاق مستمر.
حدد وقتاً للاسترداد على الرسم البياني للخط الزمني، أو حدد وقتاً. ثم حدد موافق.
استعادة جزئية لملفات
تقرر خدمة Azure Backup سلسلة الملفات التي سيتم تنزيلها أثناء الاستعادة كملفات. ولكن هناك سيناريوهات قد لا ترغب فيها في تنزيل المحتوى بأكمله مرة أخرى.
على سبيل المثال، عندما يكون لديك نهج النسخ الاحتياطي الكامل الأسبوعي والتفاضلات اليومية والسجلات، وقمت بالفعل بتنزيل الملفات لتفاضلية معينة. لقد وجدت أن هذه ليست نقطة الاسترداد الصحيحة وقررت تنزيل التفاضلية في اليوم التالي. الآن تحتاج فقط إلى الملف التفاضلي نظرًا لأن لديك بالفعل البداية كاملة. مع القدرة على الاستعادة الجزئية كملفات، التي يوفرها Azure Backup، يمكنك الآن استبعاد الكامل من سلسلة التنزيل وتنزيل التفاضلي فقط.
باستثناء أنواع ملفات النسخ الاحتياطي
ExtensionSettingsOverrides.json هو ملف JSON (JavaScript Object Notation) يحتوي على تجاوزات لإعدادات متعددة لخدمة Azure Backup ل SQL. لعملية "الاستعادة الجزئية كملفات"، يجب إضافة حقل RecoveryPointTypesToBeExcludedForRestoreAsFiles JSON جديد. يحتوي هذا الحقل على قيمة سلسلة تشير إلى أنواع نقاط الاسترداد التي يجب استبعادها في عملية الاستعادة التالية كملفات.
في الجهاز الهدف حيث سيتم تنزيل الملفات، انتقل إلى مجلد "C:\Program Files\Azure Workload Backup\bin"
إنشاء ملف JSON جديد يسمى "ExtensionSettingsOverrides.JSON"، إذا لم يكن موجودا بالفعل.
لا يلزم إعادة تشغيل أي خدمة. ستحاول خدمة Azure Backup استبعاد أنواع النسخ الاحتياطي في سلسلة الاستعادة كما هو مذكور في هذا الملف.
RecoveryPointTypesToBeExcludedForRestoreAsFiles يأخذ فقط قيمًا محددة تشير إلى نقاط الاسترداد التي سيتم استبعادها أثناء الاستعادة. بالنسبة إلى SQL، هذه القيم هي:
ExcludeFull (سيتم تنزيل أنواع النسخ الاحتياطي الأخرى مثل التفاضلية والسجلات، إذا كانت موجودة في سلسلة نقاط الاستعادة)
ExcludeFullAndDifferential (سيتم تنزيل أنواع النسخ الاحتياطي الأخرى مثل السجلات، إذا كانت موجودة في سلسلة نقاط الاستعادة)
ExcludeFullAndIncremental (سيتم تنزيل أنواع النسخ الاحتياطي الأخرى مثل السجلات، إذا كانت موجودة في سلسلة نقاط الاستعادة)
ExcludeFullAndDifferentialAndIncremental (سيتم تنزيل أنواع النسخ الاحتياطي الأخرى مثل السجلات، إذا كانت موجودة في سلسلة نقاط الاستعادة)
الاسترداد إلى نقطة استرداد معينة
إذا حددت Full & Differential كنوع الاستعادة، فقم بما يلي:
حدد نقطة استرداد من القائمة، وحدد OK لإكمال إجراء نقطة الاسترداد.
ملاحظة
يتم عرض نقاط الاسترداد من آخر 30 يوماً بشكل افتراضي. يمكنك عرض نقاط الاسترداد الأقدم من 30 يوماً عن طريق تحديد Filter وتحديد نطاق مخصص.
استعادة قواعد البيانات التي تحتوي على عدد كبير من الملفات
إذا كان الحجم الإجمالي لسلسلة الملفات في قاعدة البيانات أكبر من حد معين، تقوم Azure Backup بتخزين قائمة ملفات قاعدة البيانات في مكون حفرة مختلف بحيث لا يمكنك تعيين مسار الاستعادة الهدف أثناء عملية الاستعادة. ستتم استعادة الملفات إلى مسار SQL الافتراضي بدلاً من ذلك.
استرداد قاعدة بيانات من ملف .bak باستخدام SSMS
يمكنك استخدام عملية الاستعادة كملفات لاستعادة ملفات قاعدة البيانات بالتنسيق .bak أثناء الاستعادة من مدخل Microsoft Azure. اعرف المزيد.
عند اكتمال استعادة .bak الملف إلى الجهاز الظاهري Azure، يمكنك تشغيل الاستعادة باستخدام أوامر TSQL من خلال SSMS.
لاستعادة ملفات قاعدة البيانات إلى المسار الأصلي على الخادم المصدر، قم بإزالة العبارة MOVE من استعلام استعادة TSQL.
مثال
USE [master]
RESTORE DATABASE [<DBName>] FROM DISK = N'<.bak file path>'
لنقل ملفات قاعدة البيانات من خادم الاستعادة الهدف، يمكنك وضع إطار لأمر TSQL باستخدام MOVE العبارات.
USE [master]
RESTORE DATABASE [<DBName>] FROM DISK = N'<.bak file path>' MOVE N'<LogicalName1>' TO N'<TargetFilePath1OnDisk>', MOVE N'<LogicalName2>' TO N'<TargetFilePath2OnDisk>' GO
مثال
USE [master]
RESTORE DATABASE [test] FROM DISK = N'J:\dbBackupFiles\test.bak' WITH FILE = 1, MOVE N'test' TO N'F:\data\test.mdf', MOVE N'test_log' TO N'G:\log\test_log.ldf', NOUNLOAD, STATS = 5
GO
إذا كان هناك أكثر من ملفين لقاعدة البيانات، يمكنك إضافة عبارات إضافية MOVE إلى استعلام الاستعادة. يمكنك أيضا استخدام SSMS لاسترداد قاعدة البيانات باستخدام .bak الملفات. اعرف المزيد.
ملاحظة
لاسترداد قاعدة البيانات الكبيرة، نوصيك باستخدام عبارات TSQL. إذا كنت تريد نقل ملفات قاعدة البيانات المحددة، فشاهد قائمة ملفات قاعدة البيانات بتنسيق JSON الذي تم إنشاؤه أثناء عملية استعادة كملفات .
استعادة عبر المنطقة
تسمح لك الاستعادة عبر المناطق (CRR) باستعادة قواعد بيانات SQL المستضافة على Azure VMs في منطقة ثانوية، وهي منطقة Azure المقترنة كأحد خيارات الاستعادة.
إذا تم تمكين CRR، يمكنك عرض عناصر النسخ الاحتياطي في المنطقة الثانوية.
من المدخل، انتقل إلى مخزن خدمات الاسترداد>عناصر النسخ الاحتياطي.
حدد "Secondary Region" لعرض العناصر في المنطقة الثانوية.
ملاحظة
سيتم عرض أنواع إدارة النسخ الاحتياطي التي تدعم ميزة CRR فقط في القائمة. يُسمح حالياً فقط بدعم استعادة بيانات المنطقة الثانوية إلى منطقة ثانوية.
الاستعادة في المنطقة الثانوية
ستكون تجربة المستخدم مع استعادة المنطقة الثانوية مشابهة لتجربة المستخدم مع استعادة المنطقة الأساسية. عند تكوين التفاصيل في جزء "Restore Configuration" لتكوين الاستعادة، سيُطلب منك تقديم معلمات المنطقة الثانوية فقط. يجب أن يوجد مخزن في المنطقة الثانوية ويجب أن يتم تسجيل خادم SQL في المخزن في المنطقة الثانوية.
ملاحظة
بعد بدء الاستعادة وفي مرحلة نقل البيانات، لا يمكن إلغاء مهمة الاستعادة.
مستوى الدور/ الوصول المطلوب لأداء عملية الاستعادة في المناطق المشتركة هو دور مشغل النسخ الاحتياطي في الاشتراك والوصول للمساهم (كتابة) على الأجهزة الظاهرية المصدر والهدف. لعرض مهام النسخ الاحتياطي، قارئ النسخ الاحتياطي هو الحد الأدنى للإذن المطلوب في الاشتراك.
RPO لبيانات النسخ الاحتياطي لتكون متاحة في المنطقة الثانوية هو 12 ساعة. لذلك، عند تشغيل CRR، يكون RPO للمنطقة الثانوية هو 12 ساعة + مدة تكرار السجل (التي يمكن تعيينها إلى 15 دقيقة كحد أدنى).
في مدخل Microsoft Azure، انتقل إلى Backup center>Backup Jobs.
عملية التصفية لـ CrossRegionRestore من أجل عرض الوظائف في المنطقة الثانوية.
استعادة الاشتراكات المتقاطعة
يسمح لك Azure Backup الآن باستعادة قاعدة بيانات SQL إلى أي اشتراك (وفقا لمتطلبات Azure RBAC التالية) من نقطة الاستعادة. بشكل افتراضي، يستعيد Azure Backup إلى نفس الاشتراك حيث تتوفر نقاط الاستعادة.
مع الاستعادة عبر الاشتراك (CSR)، لديك مرونة الاستعادة إلى أي اشتراك وأي مخزن ضمن المستأجر الخاص بك إذا كانت أذونات الاستعادة متوفرة. بشكل افتراضي، يتم تمكين CSR على جميع مخازن خدمات الاسترداد (المخازن الموجودة والمنشأة حديثا).
ملاحظة
يمكنك تشغيل الاستعادة عبر الاشتراك من مخزن خدمات الاسترداد.
يتم دعم CSR فقط للنسخ الاحتياطي المستند إلى الدفق ولا يتم دعمه للنسخ الاحتياطي المستند إلى اللقطة.
الاستعادة الإقليمية المتقاطعة (CRR) مع CSR غير مدعومة.
متطلبات التحكم في الوصول استنادا إلى الدور في Azure
نوع العملية
عامل تشغيل النسخ الاحتياطي
مخزن خدمات الاسترداد
عامل تشغيل بديل
استعادة قاعدة البيانات أو الاستعادة كملفات
Virtual Machine Contributor
مصدر الجهاز الظاهري الذي تم نسخه احتياطياً
بدلا من دور مضمن، يمكنك التفكير في دور مخصص له الأذونات التالية:
بشكل افتراضي، يتم تمكين CSR على مخزن خدمات الاسترداد. لتحديث إعدادات استعادة مخزن خدمات الاسترداد، انتقل إلى Properties>Cross Subscription Restore وقم بإجراء التغييرات المطلوبة.
الخطوات التالية
إدارة ومراقبة قواعد بيانات SQL Server التي تم نسخها احتياطياً بواسطة Azure Backup.
إدارة البنية الأساسية لقاعدة بيانات SQL Server لقواعد البيانات الارتباطية السحابية والمحلية والمختلطة باستخدام عروض قاعدة البيانات الارتباطية ل Microsoft PaaS.
في هذا البرنامج التعليمي، تعرف على كيفية عمل نسخة احتياطية من قاعدة بيانات SQL Server التي يتم تشغيلها على Azure VM إلى مخزن Azure Backup Recovery Services.
توضح هذه المقالة ميزة النسخ الاحتياطي التلقائي لأجهزة SQL Server 2016/2017 الظاهرية قيد التشغيل في Azure. هذه المقالة خاصة بالأجهزة الظاهرية التي تستخدم Resource Manager.