סיום ההעברה

בהעברות רציפות, אפשר להתחיל את תהליך הקידום אחרי שהגיע הזמן להעביר את פעולות הקריאה והכתיבה למסדי הנתונים ביעד. העברה פירושה ש-Database Migration Service מתנתק ממסד הנתונים של המקור, מפסיק לשכפל אירועים של שינוי נתונים למסד הנתונים של היעד ומנקה את כל נתוני ההעברה הזמניים.

  1. אופציונלי: בודקים את נתוני ההעברה כדי לוודא שהם מלאים.
  2. עוצרים את כל פעולות הכתיבה, הסקריפטים שפועלים והחיבורים של הלקוחות למסד הנתונים של המקור. כאן מתחילה תקופת ההשבתה.
  3. עוקבים אחרי מדד עיכוב הרפליקציה וממתינים עד שהוא יורד באופן משמעותי, באופן אידיאלי בסדר גודל של דקות או שניות.
  4. מבצעים את פעולת הקידום במשימת ההעברה.

    המסוף

    אפשר לקדם משימת העברה מתוך Database Migration Service או מהדף של מכונת היעד.

    ב-Database Migration Service:

    1. נכנסים לדף Migration jobs במסוף Google Cloud .

      מעבר למשימות ההעברה

    2. בכרטיסייה Jobs, לוחצים על השם המוצג של משימת ההעברה שרוצים לקדם.

      דף הפרטים של משימת ההעברה נפתח.

    3. לוחצים על קידום.
    4. בתיבת הדו-שיח, לוחצים על קידום.

    במכונה שאליה מעבירים:

    1. נכנסים לדף Cloud SQL Instances במסוף Google Cloud .

      כניסה לדף Cloud SQL Instances

    2. לוחצים על השם המוצג של המכונה שאליה רוצים להעביר את הנתונים.

      דף הפרטים של המכונה ייפתח.

    3. בקטע העברה, לוחצים על קידום.
    4. מוודאים שלא מוצגות שגיאות בתיבת הדו-שיח ולוחצים על Promote.

    gcloud

    לפני השימוש בנתוני הפקודה הבאים, צריך להחליף את הנתונים הבאים:

    • ‫MIGRATION_JOB_ID במזהה של משימת ההעברה.

      אם אתם לא יודעים מה המזהה, אתם יכולים להשתמש בפקודה gcloud database-migration migration-jobs list כדי להציג את כל משימות ההעברה באזור מסוים ואת המזהים שלהן.

    • ‫REGION במזהה האזור שבו נשמר פרופיל החיבור.
    • אופציונלי: כברירת מחדל, Database Migration Service מעביר את כל מסדי הנתונים במקור. אם רוצים להעביר רק מסדי נתונים ספציפיים, משתמשים בדגל --databases-filter ומציינים את המזהים שלהם ברשימה מופרדת בפסיקים.

      לדוגמה: --databases-filter=my-business-database,my-other-database

      אפשר לערוך בהמשך את משימות ההעברה שיצרתם באמצעות --database-filter flag, בעזרת הפקודה gcloud database-migration migration-jobs update.

    מריצים את הפקודה הבאה:

    ‫Linux,‏ macOS או Cloud Shell

    gcloud database-migration migration-jobs \
    promote MIGRATION_JOB_ID \
      --region=REGION

    ‏Windows (PowerShell)

    gcloud database-migration migration-jobs `
    promote MIGRATION_JOB_ID `
      --region=REGION

    Windows‏ (cmd.exe)

    gcloud database-migration migration-jobs ^
    promote MIGRATION_JOB_ID ^
      --region=REGION

    תוצאה

    הפעולה מתבצעת באופן אסינכרוני. לכן, הפקודה הזו מחזירה ישות של פעולה שמייצגת פעולה ממושכת:

    done: false
    metadata:
      '@type': type.googleapis.com/google.cloud.clouddms.v1.OperationMetadata
      apiVersion: v1
      createTime: '2024-02-20T12:20:24.493106418Z'
      requestedCancellation: false
      target: MIGRATION_JOB_ID
      verb: start
    name: OPERATION_ID
    
    כדי לבדוק אם הפעולה הצליחה, אפשר לשלוח שאילתה לאובייקט הפעולה שהוחזר, או לבדוק את הסטטוס של משימת ההעברה:
  5. מכונת היעד מקודמת, ועכשיו אפשר לגשת למסדי הנתונים שהועברו לכל פעולות הקריאה והכתיבה. סטטוס משימת ההעברה משתנה ל-Completed.
  6. עכשיו אפשר לחבר את האפליקציה למכונה של Cloud SQL ולמחוק בבטחה את משימת ההעברה.