نقل الموارد إلى منطقة جديدة - قاعدة بياناتAzure SQL & مثيل Azure SQL المُدار

ينطبق على: قاعدة بيانات Azure SQL مثيل Azure SQL المدار

توضح هذه المقالة سير عمل عام حول كيفية نقل قاعدة البيانات أو المثيل المُدار إلى منطقة جديدة.

نظرة عامة

هناك العديد من السيناريوهات التي تريد فيها نقل قاعدة البيانات الحالية أو المثيل المُدار من منطقة إلى أخرى. على سبيل المثال، تقوم بتوسيع نطاق عملك إلى منطقة جديدة وتريد تحسينها لقاعدة عملاء جديدة. أو تحتاج إلى نقل العمليات إلى منطقة مختلفة لأسباب تتعلق بالامتثال. أو أصدرت Azure منطقة جديدة توفر قرباً أفضل وتُحسن تجربة العملاء.

توفر هذه المقالة سير عمل عام لنقل الموارد إلى منطقة مختلفة. يتكون هذا البرنامج التعليمي من الخطوات التالية:

  1. التحقق من المتطلبات الأساسية للنقل.
  2. الاستعداد لنقل الموارد في النطاق.
  3. مراقبة عملية الإعداد.
  4. اختبار عملية النقل.
  5. بدء النقل الفعلي.
  6. إزالة الموارد من منطقة المصدر.

ملاحظة

تنطبق هذه المقالة على عمليات الترحيل داخل سحابة Azure العامة أو داخل نفس السحابة ذات السيادة.

ملاحظة

لنقل قواعد بيانات Azure SQL والتجمعات المرنة إلى منطقة Azure مختلفة، يمكنك أيضاً استخدام Azure Resource Mover (إصدار أولي). راجع هذا البرنامج التعليمي للحصول على خطوات تفصيلية للقيام بنفس الشيء.

ملاحظة

تستخدم هذه المقالة الوحدة النمطية Azure Az PowerShell، وهي الوحدة النمطية PowerShell الموصى بها للتفاعل مع Azure. لبدء استخدام الوحدة النمطية Az PowerShell، راجع تثبيت Azure PowerShell. لمعرفة كيفية الترحيل إلى الوحدة النمطية Az PowerShell، راجع ترحيل Azure PowerShell من AzureRM إلى Az.

نقل قاعدة بيانات

التحقق من المتطلبات الأساسية

  1. أنشئ خادم هدف لكل خادم مصدر.

  2. قم بتكوين جدار الحماية مع الاستثناءات الصحيحة باستخدام PowerShell.

  3. قم بتكوين الخوادم بعمليات تسجيل الدخول الصحيحة. إذا لم تكن مسؤول الاشتراك أو مسؤول خادم SQL، فاعمل مع المسؤول لتعيين الأذونات التي تحتاجها. لمزيد من المعلومات، راجع كيفية إدارة أمان قاعدة بيانات Azure SQL بعد التعافي من الكوارث.

  4. إذا كانت قواعد البيانات مشفرة بتشفير بيانات شفاف (TDE) وقمت بإحضار مفتاح التشفير الخاص بك (BYOK أو المفتاح المُدار بواسطة العميل) في Azure Key Vault، فتأكد من توفير مواد التشفير الصحيحة في المناطق المستهدفة.

    • أبسط طريقة للقيام بذلك هي إضافة مفتاح التشفير من Azure Key Vault الموجود (الذي يتم استخدامه كحامٍ لـ TDE على الخادم المصدر) إلى الخادم الهدف ثم تعيين المفتاح كحامٍ لـ TDE على الخادم الهدف

      ملاحظة

      يمكن الآن توصيل خادم أو مثيل مُدار في منطقة ما بـAzure Key Vault في أي منطقة أخرى.

    • كأفضل ممارسة لضمان وصول الخادم الهدف إلى مفاتيح التشفير الأقدم (المطلوبة لاستعادة النسخ الاحتياطية لقاعدة البيانات)، قم بتشغيل الأمر Get-AzSqlServerKeyVaultKey cmdlet على الخادم المصدر أو الأمر Get-AzSqlInstanceKeyVaultKey cmdlet على المثيل المصدر المُدار لإرجاع قائمة المفاتيح المتاحة وإضافة هذه المفاتيح إلى الخادم الهدف.
    • لمزيد من المعلومات وأفضل الممارسات حول تكوين TDE المُدار بواسطة العميل على الخادم الهدف، راجع تشفير البيانات الشفافة في Azure SQL باستخدام المفاتيح المُدارة بواسطة العميل في Azure Key Vault.
    • لنقل خزنة المفاتيح إلى المنطقة الجديدة، راجع نقل Azure Key Vault عبر المناطق
  5. إذا تم تمكين التدقيق على مستوى قاعدة البيانات، فقم بتعطيله وتمكين التدقيق على مستوى الخادم بدلاً من ذلك. بعد تجاوز الفشل، سيتطلب التدقيق على مستوى قاعدة البيانات نسبة استخدام الشبكة عبر المناطق، وهو أمر غير مرغوب فيه أو يمكن تشغيله بعد النقل.

  6. لعمليات التدقيق على مستوى الخادم، تأكد مما يلي:

    • يتم نقل حاوية التخزين أو Log Analytics أو مركز الأحداث مع سجلات التدقيق الموجودة إلى المنطقة المستهدفة.
    • يتم تكوين التدقيق على الخادم الهدف. لمزيد من المعلومات، راجع بدء استخدام تدقيق قاعدة بيانات SQL.
  7. إذا كان مثيلك يحتوي على نهج احتفاظ طويل الأجل (LTR) فستظل النسخ الاحتياطية الحالية من LTR مرتبطة بالخادم الحالي. نظراً لاختلاف الخادم الهدف، ستتمكن من الوصول إلى نُسخ LTR الاحتياطية القديمة في منطقة المصدر باستخدام الخادم المصدر، حتى إذا تم حذف الخادم.

    ملاحظة

    ولن يكون ذلك كافياً للتنقل بين السحابة ذات السيادة والمنطقة العامة. سيتطلب مثل هذا الترحيل نقل نُسخ LTR الاحتياطية إلى الخادم الهدف، وهو غير مدعوم حالياً.

إعداد الموارد

  1. أنشئ مجموعة تجاوز الفشل بين الخادم المصدر والخادم الهدف.

  2. أضف قواعد البيانات التي تريد نقلها إلى مجموعة تجاوز الفشل.

    سيتم بدء النسخ المتماثل لجميع قواعد البيانات المضافة تلقائياً. لمزيد من المعلومات، راجع استخدام مجموعات تجاوز الفشل مع SQL Database.

مراقبة عملية الإعداد

يمكنك استدعاء Get-AzSqlDatabaseFailoverGroup بشكل دوري لمراقبة النسخ المتماثل لقواعد البيانات الخاصة بك من المصدر إلى الهدف. يتضمن كائن الإخراج لـ Get-AzSqlDatabaseFailoverGroup خاصية لـ ReplicationState:

  • ReplicationState = 2 (CATCH_UP) تشير إلى أن قاعدة البيانات متزامنة ويمكن تجاوز فشلها بأمان.
  • ReplicationState = 0 (SEEDING) تشير إلى أن قاعدة البيانات لم يتم إنشاؤها بعد، وأن محاولة تجاوز الفشل ستفشل.

اختبار المزامنة

بعد أن تكون قيمة ReplicationState تساوي 2، قم بالاتصال بكل قاعدة بيانات أو مجموعة فرعية من قواعد البيانات باستخدام نقطة النهاية الثانوية<fog-name>.secondary.database.windows.net وقم بإجراء أي استعلام مقابل قواعد البيانات لضمان الاتصال وتكوين الأمان المناسب والنسخ المتماثل للبيانات.

بدء النقل

  1. اتصل بالخادم الهدف باستخدام نقطة النهاية الثانوية <fog-name>.secondary.database.windows.net.
  2. استخدام التبديل Switch-AzSqlDatabaseFailoverGroup للتبديل إلى المثيل الثانوي المُدار ليكون هو المثيل الأساسي مستخدماً المزامنة الكاملة. ستنجح هذه العملية أو أنها ستعود إلى الحالة السابقة.
  3. تحقق من أن الأمر قد اكتمل بنجاح باستخدام nslook up <fog-name>.secondary.database.windows.net للتأكد من أن إدخال DNS CNAME يشير إلى عنوان IP للمنطقة المستهدفة. إذا فشل أمر التبديل لن يتم تحديث CNAME.

إزالة قواعد البيانات المصدر

بمجرد اكتمال النقل، قم بإزالة الموارد في منطقة المصدر لتجنب الرسوم غير الضرورية.

  1. احذف مجموعة تجاوز الفشل باستخدام الأمر Remove-AzSqlDatabaseFailoverGroup.
  2. احذف كل قاعدة بيانات من فواعد بيانات المصدر باستخدام الأمر Remove-AzSqlDatabase لكل من قواعد البيانات على الخادم المصدر. سيؤدي ذلك تلقائياً إلى إنهاء ارتباطات النسخ المتماثل الجغرافي.
  3. احذف الخادم المصدر باستخدام الأمر Remove-AzSqlServer.
  4. قم بإزالة Key Vault وحاويات تخزين التدقيق ومركز الأحداث ومثيل Microsoft Azure Active Directory (Azure AD) والموارد الأخرى التابعة للتوقف عن إصدار فواتير لها.

نقل التجمعات المرنة

التحقق من المتطلبات الأساسية

  1. أنشئ خادم هدف لكل خادم مصدر.

  2. قم بتكوين جدار الحماية مع الاستثناءات الصحيحة باستخدام PowerShell.

  3. قم بتكوين الخوادم بعمليات تسجيل الدخول الصحيحة. إذا لم تكن مسؤول الاشتراك أو مسؤول الخادم، فاعمل مع المسؤول لتعيين الأذونات التي تحتاجها. لمزيد من المعلومات، راجع كيفية إدارة أمان قاعدة بيانات Azure SQL بعد التعافي من الكوارث.

  4. إذا كانت قواعد البيانات مشفرة بتشفير بيانات شفاف واستخدمت مفتاح التشفير الخاص بك في Azure Key Vault، فتأكد من توفير مادة التشفير الصحيحة في المنطقة.

  5. أنشئ تجمع مرن مستهدف لكل تجمع مصدر مرن، مع التأكد من إنشاء التجمع في نفس مستوى الخدمة، بنفس الاسم والحجم نفسه.

  6. إذا تم تمكين التدقيق على مستوى قاعدة البيانات، فقم بتعطيله وتمكين التدقيق على مستوى الخادم بدلاً من ذلك. بعد تجاوز الفشل، سيتطلب التدقيق على مستوى قاعدة البيانات نسبة استخدام الشبكة عبر المناطق، وهو أمر غير مرغوب فيه أو يمكن تشغيله بعد النقل.

  7. لعمليات التدقيق على مستوى الخادم، تأكد مما يلي:

    • يتم نقل حاوية التخزين أو Log Analytics أو مركز الأحداث مع سجلات التدقيق الموجودة إلى المنطقة المستهدفة.
    • يتم تكوين التدقيق في الخادم الهدف. لمزيد من المعلومات، راجع تدقيق قاعدة بيانات SQL.
  8. إذا كان مثيلك يحتوي على نهج احتفاظ طويل الأجل (LTR) فستظل النسخ الاحتياطية الحالية من LTR مرتبطة بالخادم الحالي. نظراً لاختلاف الخادم الهدف، ستتمكن من الوصول إلى نُسخ LTR الاحتياطية القديمة في منطقة المصدر باستخدام الخادم المصدر، حتى إذا تم حذف الخادم.

    ملاحظة

    ولن يكون ذلك كافياً للتنقل بين السحابة ذات السيادة والمنطقة العامة. سيتطلب مثل هذا الترحيل نقل نُسخ LTR الاحتياطية إلى الخادم الهدف، وهو غير مدعوم حالياً.

الإعداد للنقل

  1. أنشئ مجموعة تجاوز فشل منفصلة بين كل تجمع مرن على الخادم المصدر وتجمع مرن مقابل له على الخادم الهدف.

  2. أضف جميع قواعد البيانات الموجودة في التجمع إلى مجموعة تجاوز الفشل.

    سيتم بدء النسخ المتماثل لقواعد البيانات المضافة تلقائياً. لمزيد من المعلومات، راجع استخدام مجموعات تجاوز الفشل مع SQL Database.

    ملاحظة

    في حين أنه من الممكن إنشاء مجموعة تجاوز فشل تتضمن عدة مجموعات مرنة، فإننا نوصي بشدة بإنشاء مجموعة تجاوز فشل منفصلة لكل مجموعة. إذا كان لديك عدد كبير من قواعد البيانات عبر مجموعات متعددة مرنة تحتاج إلى نقلها، يمكنك تشغيل خطوات الإعداد بالتوازي ثم بدء خطوة النقل بالتوازي. ستتوسع هذه العملية بشكل أفضل وستستغرق وقتاً أقل مقارنة بوجود عدة تجمعات مرنة في نفس مجموعة تجاوز الفشل.

مراقبة عملية الإعداد

يمكنك استدعاء Get-AzSqlDatabaseFailoverGroup بشكل دوري لمراقبة النسخ المتماثل لقواعد البيانات الخاصة بك من المصدر إلى الهدف. يتضمن كائن الإخراج لـ Get-AzSqlDatabaseFailoverGroup خاصية لـ ReplicationState:

  • ReplicationState = 2 (CATCH_UP) تشير إلى أن قاعدة البيانات متزامنة ويمكن تجاوز فشلها بأمان.
  • ReplicationState = 0 (SEEDING) تشير إلى أن قاعدة البيانات لم يتم إنشاؤها بعد، وأن محاولة تجاوز الفشل ستفشل.

اختبار المزامنة

بعد أن تكون قيمة ReplicationState تساوي 2، قم بالاتصال بكل قاعدة بيانات أو مجموعة فرعية من قواعد البيانات باستخدام نقطة النهاية الثانوية<fog-name>.secondary.database.windows.net وقم بإجراء أي استعلام مقابل قواعد البيانات لضمان الاتصال وتكوين الأمان المناسب والنسخ المتماثل للبيانات.

بدء النقل

  1. اتصل بالخادم الهدف باستخدام نقطة النهاية الثانوية <fog-name>.secondary.database.windows.net.
  2. استخدام التبديل Switch-AzSqlDatabaseFailoverGroup للتبديل إلى المثيل الثانوي المُدار ليكون هو المثيل الأساسي مستخدماً المزامنة الكاملة. إما ستنجح هذه العملية أو ستعود إلى الحالة السابقة.
  3. تحقق من أن الأمر قد اكتمل بنجاح باستخدام nslook up <fog-name>.secondary.database.windows.net للتأكد من أن إدخال DNS CNAME يشير إلى عنوان IP للمنطقة المستهدفة. إذا فشل أمر التبديل لن يتم تحديث CNAME.

إزالة التجمعات المرنة المصدر

بمجرد اكتمال النقل، قم بإزالة الموارد في منطقة المصدر لتجنب الرسوم غير الضرورية.

  1. احذف مجموعة تجاوز الفشل باستخدام الأمر Remove-AzSqlDatabaseFailoverGroup.
  2. احذف كل تجمع مرن مصدر على الخادم المصدر باستخدام الأمر Remove-AzSqlElasticPool.
  3. احذف الخادم المصدر باستخدام الأمر Remove-AzSqlServer.
  4. قم بإزالة Key Vault وحاويات تخزين التدقيق ومركز الأحداث ومثيل Microsoft Azure Active Directory (Azure AD) والموارد الأخرى التابعة للتوقف عن إصدار فواتير لها.

نقل مثيل مُدار

التحقق من المتطلبات الأساسية

  1. لكل مثيل مصدر مُدار، أنشئ مثيل هدف لمثيل SQL المدار بنفس الحجم في المنطقة المستهدفة.
  2. تكوين شبكة الاتصال لمثيل مدار. لمزيد من المعلومات، راجع تكوين الشبكة.
  3. قم بتكوين قاعدة البيانات الرئيسية الهدف مع تسجيلات الدخول الصحيحة. إذا لم تكن مسؤولاً عن الاشتراك أو مثيل SQL المُدار، فاعمل مع المسؤول لتعيين الأذونات التي تحتاجها.
  4. إذا كانت قواعد البيانات مشفرة بتشفير بيانات شفاف واستخدمت مفتاح التشفير الخاص بك في Azure Key Vault، فتأكد من وجود Azure Key Vault الذي يحتوي على مفاتيح تشفير متطابقة في مناطق المصدر والهدف. لمزيد من المعلومات، راجع تشفير البيانات الشفاف باستخدام المفاتيح المُدارة بواسطة العميل في Azure Key Vault.
  5. إذا تم تمكين التدقيق للمثيل المدار، تأكد من:
    • نقل حاوية التخزين أو مركز الأحداث مع السجلات الموجودة إلى المنطقة المستهدفة.
    • تكوين التدقيق على المثيل الهدف. لمزيد من المعلومات، راجع التدقيق باستخدام مثيل SQL المُدار.
  6. إذا كان مثيلك يحتوي على نهج احتفاظ طويل الأجل (LTR) فستظل النسخ الاحتياطية الحالية من LTR مرتبطة بالمثيل الحالي. نظراً لاختلاف المثيل الهدف، ستتمكن من الوصول إلى نُسخ LTR الاحتياطية القديمة في منطقة المصدر باستخدام المثيل المصدر، حتى إذا تم حذف المثيل.

ملاحظة

ولن يكون ذلك كافياً للتنقل بين السحابة ذات السيادة والمنطقة العامة. سيتطلب مثل هذا الترحيل نقل نُسخ LTR الاحتياطية إلى المثيل الهدف، وهو غير مدعوم حالياً.

إعداد الموارد

إنشاء مجموعة تجاوز الفشل بين كل مثيل مصدر مُدار والمثيل الهدف المقابل لمثيل SQL المُدار.

سيتم بدء النسخ المتماثل لجميع قواعد البيانات على كل مثيل تلقائياً. لمزيدٍ من المعلومات، راجع مجموعات تجاوز الفشل تلقائياً.

مراقبة عملية الإعداد

يمكنك استدعاء Get-AzSqlDatabaseFailoverGroup بشكل دوري لمراقبة النسخ المتماثل لقواعد البيانات الخاصة بك من المصدر إلى الهدف. يتضمن كائن الإخراج لـ Get-AzSqlDatabaseFailoverGroup خاصية لـ ReplicationState:

  • ReplicationState = 2 (CATCH_UP) تشير إلى أن قاعدة البيانات متزامنة ويمكن تجاوز فشلها بأمان.
  • ReplicationState = 0 (SEEDING) تشير إلى أن قاعدة البيانات لم يتم إنشاؤها بعد، وأن محاولة تجاوز الفشل ستفشل.

اختبار المزامنة

بمجرد أن تكون قيمة ReplicationState تساوي 2، قم بالاتصال بكل قاعدة بيانات أو مجموعة فرعية من قواعد البيانات باستخدام نقطة النهاية الثانوية<fog-name>.secondary.database.windows.net وقم بإجراء أي استعلام مقابل قواعد البيانات لضمان الاتصال وتكوين الأمان المناسب والنسخ المتماثل للبيانات.

بدء النقل

  1. اتصل بالخادم الهدف باستخدام نقطة النهاية الثانوية <fog-name>.secondary.database.windows.net.
  2. استخدام التبديل Switch-AzSqlDatabaseFailoverGroup للتبديل إلى المثيل الثانوي المُدار ليكون هو المثيل الأساسي مستخدماً المزامنة الكاملة. ستنجح هذه العملية أو أنها ستعود إلى الحالة السابقة.
  3. تحقق من أن الأمر قد اكتمل بنجاح باستخدام nslook up <fog-name>.secondary.database.windows.net للتأكد من أن إدخال DNS CNAME يشير إلى عنوان IP للمنطقة المستهدفة. إذا فشل أمر التبديل لن يتم تحديث CNAME.

إزالة المثيلات المصدر المدارة

بمجرد انتهاء النقل، قم بإزالة الموارد في منطقة المصدر لتجنب الرسوم غير الضرورية.

  1. احذف مجموعة تجاوز الفشل باستخدام الأمر Remove-AzSqlDatabaseFailoverGroup. سيؤدي ذلك إلى إسقاط تكوين مجموعة تجاوز الفشل وإنهاء ارتباطات النسخ المتماثل الجغرافي بين المثيلين.
  2. احذف المثيل المصدر المُدار باستخدام الأمر Remove-AzSqlInstance.
  3. قم بإزالة أي موارد إضافية في مجموعة الموارد، مثل نظام المجموعة الظاهري والشبكة الظاهرية ومجموعة الأمان.

الخطوات التالية

قم بـإدارة قاعدة البيانات الخاصة بك بعد ترحيلها.