مشاركة عبر


Migrationrate MongoDB إلى Azure DocumentDB دون اتصال باستخدام أدوات MongoDB الأصلية

في هذا الدرس، تستخدم أدوات MongoDB الأصلية لإجراء ترحيل لقاعدة بيانات بدون اتصال (مرة واحدة) من نسخة محلية أو سحابية من MongoDB إلى Azure DocumentDB. أدوات MongoDB الأصلية هي مجموعة من الملفات الثنائية التي تسهل معالجة البيانات على مثيل MongoDB موجود. يركز هذا المستند على نقل البيانات من نسخة MongoDB باستخدام mongoexport/mongoimport أو mongodump/mongorestore. نظرا لأن الأدوات الأصلية تتصل ب MongoDB باستخدام سلاسل الاتصال، يمكنك تشغيل الأدوات في أي مكان. يمكن أن تكون الأدوات الأصلية أبسط حل لمجموعات البيانات الصغيرة حيث لا يكون وقت الترحيل الإجمالي مصدر قلق.

Prerequisites

  • اشتراك Azure

  • مجموعة Azure DocumentDB موجودة

تجهيز

قبل بدء الترحيل، تأكد من تحضير حساب Azure DocumentDB الخاص بك ونسخة MongoDB الحالية الخاصة بك للترحيل.

  • نسخة MongoDB (المصدر)
    • أكمل تقييم ما قبل الهجرة لتحديد ما إذا كانت هناك قائمة من عدم التوافق والتحذيرات بين الحالة المصدر والحساب المستهدف.
    • تأكد من أن أدوات MongoDB الأصلية الخاصة بك تطابق نفس النسخة مع نسخة MongoDB الحالية (المصدر).
      • إذا كان نسخة MongoDB لديك تحتوي على نسخة مختلفة عن Azure DocumentDB، فقم بتثبيت نسختي MongoDB الأصليتين واستخدم النسخة المناسبة من MongoDB وAzure DocumentDB على التوالي.
    • أضف مستخدما لديه readWrite صلاحيات، إلا إذا كان موجودا بالفعل. في النهاية تستخدم هذه الشهادة مع أدوات mongoexport و mongodump .
  • Azure DocumentDB (target)

Tip

نوصي بتشغيل هذه الأدوات ضمن نفس شبكة مثيل MongoDB لتجنب المزيد من مشاكل جدار الحماية.

اختر الأداة الأصلية المناسبة ل MongoDB

هناك بعض الاعتبارات الرئيسية عند اختيار الأداة الأصلية المناسبة ل MongoDB للترحيل غير المتصل بالإنترنت.

شغّل الترحيل

قم بنقل مجموعة من نسخة MongoDB الأصلية إلى حساب Azure DocumentDB المستهدف باستخدام أداتك الأصلية المفضلة. لمزيد من المعلومات حول اختيار الأداة، راجع خيارات الترحيل.

Tip

إذا كان لديك فقط ملف JSON صغير تريد استيراده إلى Azure DocumentDB، فإن أداة mongoimport هي حل سريع لاستيعاب البيانات.

  1. لتصدير البيانات من مثيل MongoDB المصدر، افتح طرفية واستخدم أي من الطرق الثلاث المذكورة هنا.

    • حدد الوسيط --host، --username، والمواصفات --password للاتصال بسجلات JSON وتصديرها.

      mongoexport \
          --host <hostname><:port> \
          --username <username> \
          --password <password> \
          --db <database-name> \
          --collection <collection-name> \
          --out <filename>.json
      
    • تصدير مجموعة فرعية من بيانات MongoDB بإضافة وسيط.--query تضمن هذه الحجة أن الأداة تصدر فقط المستندات التي تطابق المرشح.

      mongoexport \
          --host <hostname><:port> \
          --username <username> \
          --password <password> \
          --db <database-name> \
          --collection <collection-name> \
          --query '{ "quantity": { "$gte": 15 } }' \
          --out <filename>.json
      
    • تصدير البيانات من Azure DocumentDB.

      mongoexport \
          --uri <target-connection-string>
          --db <database-name> \
          --collection <collection-name> \
          --query '{ "quantity": { "$gte": 15 } }' \
          --out <filename>.json
      
  2. استيراد الملف الذي تم تصديره سابقا إلى حساب Azure DocumentDB المستهدف.

    mongoimport \
        --file <filename>.json \
        --type json \
        --db <database-name> \
        --collection <collection-name> \
        --ssl \
        --uri <target-connection-string>
    
  3. راقب مخرجات الطرفية من Mongoimport. يطبع الإخراج أسطر نصية إلى الطرفية مع تحديثات حول حالة عملية الاستيراد.

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