إشعار
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تسجيل الدخول أو تغيير الدلائل.
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تغيير الدلائل.
في هذا الدرس، تستخدم إضافة ترحيل Azure DocumentDB في كود Visual Studio لإنشاء وإدارة مهام الترحيل من نسخة محلية أو سحابية من MongoDB إلى Azure DocumentDB. يوفر هذا الامتداد واجهة صديقة للمطورين لإجراء عمليات الترحيل دون انقطاعات في الخدمة. يلغي الامتداد الحاجة إلى بنية تحتية إضافية ويوفر اتصالا آمنا، واستخداما بدون تكلفة، وتحكما دقيقا في قواعد البيانات والمجموعات التي سيتم نقلها.
يركز هذا المقال على استخدام سير العمل المتكامل للإضافة لتبسيط خطوات الترحيل مباشرة داخل كود Visual Studio. هذا النهج مثالي للسيناريوهات التي ترغب فيها في تجربة مبسطة ومدارة مع أقل قدر من التعقيد وأقصى قدر من الموثوقية.
Prerequisites
اشتراك Azure
- إذا لم يكن لديك اشتراك Azure، فقم بإنشاء حساب مجاني
مجموعة Azure DocumentDB موجودة
- إذا لم يكن لديك عنقود، أنشئ عنقود جديد
- قم بتثبيت إضافة ترحيل Azure DocumentDB على جهازك. يقوم هذا بتثبيت متطلبه الأساسي، وهو امتداد DocumentDB for Visual Studio Code .
قبل بدء الترحيل، جهز حساب Azure DocumentDB الخاص بك ونسخة MongoDB الحالية الخاصة بك للترحيل.
نسخة MongoDB (المصدر)
- أكمل تقييم ما قبل الهجرة لتحديد ما إذا كانت هناك تناقضات وتحذيرات بين الحالة الأصلية والحساب المستهدف.
- أضف مستخدما مع
readAnyDatabaseوصلاحياتclusterMonitor، إلا إذا كان هناك صلاحيات موجودة بالفعل. تستخدم هذه الشهادة أثناء إنشاء وظائف الترحيل في الامتداد.
Azure DocumentDB (target)
- جمع بيانات اعتماد حساب Azure DocumentDB.
- تأكد من أن المستخدم لديه
createCollection،dropCollection،createIndex،insert، والأذوناتlistCollections.
Important
مصادقة Microsoft Entra ID غير مدعومة حاليا في وظائف الترحيل. يرجى استخدام المصادقة الأصلية في DocumentDB.
شغّل الترحيل
اتصل بالمصدر
- افتح امتداد DocumentDB ل VS Code .
- أضف خادم MongoDB الذي تريد ترحيله إلى قائمة اتصالات قاعدة بيانات المستندات .
- اختر إضافة اتصال جديد.
- في شريط التنقل، اختر سلسلة الاتصال.
- الصق سلسلة الاتصال الخاصة بك:
mongodb://<YOUR_USERNAME>:<YOUR_PASSWORD>@localhost:10260/?tls=true&tlsAllowInvalidCertificates=true&authMechanism=SCRAM-SHA-256 - من DocumentDB Connections، اختر الاتصال ووسعه للاتصال.
استدعاء امتداد الهجرة
يمكنك استدعاء امتداد الترحيل من DocumentDB Connections.
انقر بزر الفأرة الأيمن على اتصال موسع (متصل).
اختر ترحيل البيانات من قائمة السياق.
اختر Migrationrate to Azure DocumentDB من لوحة الأوامر.
يوجهك ساحر الهجرة خلال العملية.
إنشاء وظيفة ترحيل
يتم استخدام مهمة الترحيل لترحيل مجموعة من المجموعات من المصدر إلى وجهة Azure DocumentDB. ساحر إنشاء مهمة الترحيل يحتوي على ست خطوات.
الخطوة 1: إنشاء وظيفة
في هذه الخطوة، تقدم التفاصيل الأساسية للعمل.
اسم الوظيفة: قدم اسما سهل الاستخدام لتحديد وظيفة الانتقال.
وضع الترحيل: اختر وضع الترحيل الأنسب لحالتك.
- الترحيل عبر الإنترنت ينسخ بيانات الجمع، مما يضمن تكرار التحديثات أيضا أثناء العملية. هذه الطريقة مفيدة مع الحد الأدنى من وقت التعطل، ما يسمح للعمليات المستمرة لاستمرارية الأعمال. استخدم هذا الخيار عندما تكون العمليات الجارية حاسمة، ويكون تقليل وقت التعطل أولوية.
- الترحيل غير المتصل يلتقط لمحة عن قاعدة البيانات في البداية، مقدما نهجا أبسط وأكثر توقعا. يعمل بشكل جيد عندما يكون استخدام نسخة ثابتة من قاعدة البيانات مقبولا، والتحديثات الفورية ليست ضرورية.
Important
لضمان نجاح الترحيلات عبر الإنترنت من MongoDB، يجب تفعيل ChangeStream على خادم MongoDB المصدر. بدون ChangeStream، لا يتم التقاط أي تعديلات تجرى على البيانات بعد الترحيل الأولي. لذا، استخدم وضع الترحيل عبر الإنترنت فقط إذا كان ChangeStream مفعلا على خادم MongoDB المصدر الخاص بك.
الاتصال: اعتمادا على متطلبات الأمان وإعداد الشبكة، اختر بين القطاعين العاموالخاص.
- استخدم الوضع العام عندما تكون الخوادم المصدر والهدف متاحة عبر الإنترنت عبر عناوين IP العامة. يتيح دعم الخدمات التي تتطلب وصولا خارجيا.
- استخدم Private عندما تكون الخوادم المصدر أو الهدف متاحة حصريا عبر عناوين IP الخاصة داخل شبكة افتراضية. يعزز الأمان من خلال القضاء على التعرض للإنترنت العام.
حدد التالي للمتابعة.
الخطوة 2: اختر الهدف
في هذه الخطوة، تختار حساب Azure DocumentDB موجود وتوفر سلسلة الاتصال الخاصة به.
اختر الاشتراك، ومجموعة الموارد، وحساب Azure DocumentDB من القوائم المنسدلة.
توفير سلسلة الاتصال إلى حساب Azure DocumentDB.
تأكد من أن عنوان IP المدرج في الشاشة مسموح به على جدار الحماية Azure DocumentDB.
حدد التالي للمتابعة.
الخطوة 3: اختر خدمة ترحيل قواعد البيانات (DMS)
خدمة ترحيل قواعد بيانات Azure هي خدمة تقوم بترحيل البيانات إلى وإلى منصات بيانات Azure باستخدام البنية التحتية السحابية لنقل البيانات، بدلا من الاعتماد على الموارد المحلية. اختر نسخة خدمة ترحيل قاعدة بيانات Azure الحالية من القائمة المنسدلة أو اختر إنشاء DMS لإنشاء خدمة ترحيل جديدة.
Important
تأكد من أن مزود موارد Microsoft.DataMigration مسجل في اشتراكك. تحتاج فقط إلى القيام بذلك مرة واحدة لكل اشتراك.
حدد التالي للمتابعة.
الخطوة 4: تكوين الاتصال
تعتمد هذه الشاشة على وضع الاتصال الذي اخترته في الخطوة الأولى.
الاتصال العام
في الاتصال العام، تتصل مهمة الانتقال بمصدرك وهدفك باستخدام الإنترنت العام. لتمكين التواصل، يطلب منك تحديث جدران الحماية المصدر والهدف. لتمكين التواصل من خوادم DMS، أضف عناوين IP المدرجة في الشاشة إلى جدران الحماية المصدر والهدف. لمزيد من المعلومات، راجع إعداد جدار الحماية العنقودي Azure DocumentDB .
الاتصال الخاص
في الاتصال الخاص، تعمل مهمة الترحيل داخل شبكتها الافتراضية. للتواصل الآمن مع شبكتك الافتراضية، نستخدم الربط بين الشبكات الافتراضية.
اختر الاشتراك، مجموعة الموارد، والشبكة الافتراضية من القائمة المنسدلة.
شغل سكريبت PowerShell المرفق على الشاشة لتمكين تكامل الشبكة الافتراضية.
حدد التالي للمتابعة.
الخطوة 5: اختيار المجموعات
في هذه الخطوة، تختار المجموعات التي ستدرج في مهمة الترحيل. اختر من قائمة المجموعات باستخدام خيارات البحث المتاحة. المجموعات الموجودة بالفعل في الهدف يتم تمييزها تلقائيا ب نعم في عمود الموجود في الهدف .
Tip
تأكد من اختيار جميع المجموعات التي تريد تضمينها لأن قائمة المجموعات لا يمكن إضافتها بمجرد إنشاء مهمة الترحيل.
حدد التالي للمتابعة.
الخطوة 6: تأكيد وابدأ
راجع تفاصيل وظيفة الانتقال قبل اختيار بدء الترحيل. إذا كانت التفاصيل بحاجة إلى تحديث، استخدم زر تعديل التفاصيل .
بمجرد إنشاء مهمة الترحيل بنجاح، يتم توجيهك تلقائيا إلى صفحة عرض الوظائف الموجودة
Tip
يتم تشغيل مهام ترحيل البيانات على خدمة ترحيل قاعدة بيانات Azure. لذلك، لست ملزما بأن تكون متصلا ببيئات المصدر والهدف أثناء نقل البيانات. يتم تحديث الحالة على لوحة التحكم بشكل متكرر.
مراقبة وظائف الهجرة الحالية
استخدم تبويب عرض الوظائف الحالية لمراقبة حالة ترحيل الوظائف المهيأة. الوظائف مدرجة بناء على الرسائل المختارة. استخدم زر تغيير DMS لتغيير اختيارك.
يتم تحديث الحالة تلقائيا على فترات متكررة. تكتمل المهام غير المتصلة تلقائيا بمجرد نسخ لقطات المجموعة المختارة إلى الهدف. ومع ذلك، يجب تقليص عمليات النقل عبر الإنترنت يدويا.
لعرض حالة المجموعة، اختر صفا من الجدول.
مراقبة الهجرة عبر الإنترنت
الترحيلات عبر الإنترنت، على عكس الترحيلات غير المتصلة، لا تكتمل تلقائيا. بدلا من ذلك، تستمر في التشغيل حتى يتم الانتهاء منها يدويا باختيار Cutover.
لإكمال الترحيل عبر الإنترنت، اتبع الخطوات التالية بالترتيب المذكور:
يتم تفعيل زر التحويل بمجرد اكتمال التحميل الأولي لجميع المجموعات. في هذه المرحلة، تكون الوظيفة في مرحلة التكرار، حيث تنسخ باستمرار التحديثات من المثيل المصدر إلى المثيل المستهدف للحفاظ على up-toالتاريخ مع أحدث التغييرات.
عندما تكون جاهزا لإجراء عملية الانتقال الترحيلي، أوقف جميع المعاملات الواردة إلى المجموعات المصدرية التي يتم نقلها.
تظهر فجوة التكرار الفجوة الزمنية بين آخر تحديث والوقت الحالي.
راقب تغييرات النسخ في الجدول وانتظر حتى تستقر مقياس تغييرات النسخ أثناء اللعب . تشير مقياس Replication Changes Played المستقر إلى أن جميع التحديثات من المصدر يتم نسخها بنجاح إلى الهدف.
اختر القطع عندما تكون فجوة النسخ صغيرة لجميع المجموعات ويكون مقياس تغييرات النسخ الذي تم لعبه مستقرا.
تحقق يدويا من أن عدد الصفوف هو نفسه بين مجموعات المصدر والهدف.
إشعار
إجراء عملية التحويل دون التحقق من التزامن بين المصدر والهدف قد يؤدي إلى فقدان البيانات.
سجل مزود موارد Microsoft.DataMigration في اشتراكك
للتأكد من تسجيل مزود موارد Microsoft.DataMigration في اشتراكك، يمكنك اتباع الخطوات التالية:
Azure portal
اذهب إلى بوابة Azure وانتقل إلى اشتراكك.
في القائمة اليسرى، اختر مزودي الموارد تحت الإعدادات.
ابحث عن Microsoft.DataMigration في مربع البحث في الأعلى.
إذا لم يكن مسجلا، اختر زر التسجيل .
Azure CLI
افتح واجهة Azure Cloud Shell أو جهاز الطرفية المحلي الخاص بك.
شغل الأمر التالي لتسجيل مزود الموارد:
az provider register --namespace Microsoft.DataMigration
PowerShell
افتح Azure Cloud Shell أو PowerShell المحلي الخاص بك.
شغل الأمر التالي لتسجيل مزود الموارد:
Register-AzResourceProvider -ProviderNamespace "Microsoft.DataMigration"
FAQ
لماذا تغيب العروض في خطوة اختيار الشاشة للمجموعة عندما يدعم Azure DocumentDB العروض؟
يدعم Azure DocumentDB إنشاء عروض جديدة. ومع ذلك، لا يوفر امتداد الترحيل دعما لترحيل العروض الحالية.
بعد الانتهاء من الترحيل، يمكنك دائما إعادة إنشاء العروض.
أي المجموعات وقواعد البيانات يتم تخطيها عند الانتقال من MongoDB إلى Azure DocumentDB؟
تعتبر قواعد البيانات والمجموعات التالية داخلية لمونغو دي بي:
| Category | Description |
|---|---|
| قواعد البيانات | إعداد المسؤول، المحلي، النظام |
| المجموعات | أي مجموعة لها بادئة system. |
هل تعمل وظائف الترحيل محليا على جهازي؟
تدرج قواعد البيانات والمجموعات مباشرة في واجهة المعالج باستخدام أوامر تنفذ من عميل VS Code المحلي. تتطلب هذه الوظائف الاتصال الشبكي بين الجهاز الذي يعمل ب VS Code وكل من بيئتي المصدر والهدف.
يتم تنفيذ مهام ترحيل البيانات بواسطة خدمة ترحيل قاعدة بيانات Azure (DMS). DMS هو خدمة مستضافة من قبل Azure تقوم بتنظيم وإدارة أنشطة نقل البيانات. بمجرد إنشاء مهام الترحيل، لم تعد بحاجة للحفاظ على الاتصال ببيئات المصدر والهدف.
هل يمكنني إعادة تسمية قواعد البيانات والمجموعات أثناء الترحيل؟
الإضافة لا تدعم إعادة تسمية قواعد البيانات والمجموعات أثناء الترحيل.
كيف يجب أن أضبط جدران الحماية في الخادم المصدر لتجنب مشاكل الاتصال؟
يعتمد تكوين الشبكة المطلوب على وضع الاتصال المختار:
- الوضع العام: يجب السماح بعناوين IP المعروضة في المعالج على كل من جدران الحماية المصدر والهدف لتمكين التواصل.
- الوضع الخاص: يجب عليك تفعيل تكامل الشبكة الافتراضية حتى تتمكن خوادم DMS من التواصل بأمان مع نقاط النهاية المصدر والهدف داخل الشبكة الافتراضية.
يرجى أيضا الرجوع إلى الاتصال في VS Code
كم عدد قواعد البيانات والمجموعات التي يمكنني ترحيلها في ترحيل واحد؟
يمكنك تضمين ما يصل إلى 25 مجموعة في ترحيل واحد. ومع ذلك، يمكنك إنشاء وتشغيل عدة وظائف ترحيل لنقل مجموعات أخرى.
كم عدد وظائف الترحيل التي يمكنني تشغيلها في نفس الوقت؟
يمكنك تشغيل عدة وظائف ترحيل عند استخدام الوصول العام. ومع ذلك، عند استخدام الوصول الخاص، يمكن لشبكة افتراضية واحدة فقط دعم مهمة نشطة واحدة في كل مرة. لتشغيل عدة وظائف بوصول خاص، تحتاج إلى استخدام شبكة افتراضية مختلفة لكل وظيفة.
ما نوع السجلات التي تولدها التوسعة؟
يسجل الامتداد الأخطاء والتحذيرات وسجلات التشخيص الأخرى في مجلد السجلات الافتراضي:
-
نوافذ -
C:\Users\<username>\.dmamongo\logs\ -
لينكس -
~/.dmamongo/logs -
macOS -
/Users/<username>/.dmamongo/logs