אחסון קובצי גיבוי בקטגוריה של Cloud Storage

שירות Database Migration Service משכפל נתונים מקובצי הגיבוי ויומן העסקאות של SQL Server, שאתם מעלים לקטגוריה של Cloud Storage. בדף הזה מוסבר איך להכין את הקטגוריה לתהליכי ההעברה, ואיזה מבנה תיקיות נדרש כדי ש-Database Migration Service יזהה את קובצי הגיבוי להעברה ממקורות בניהול עצמי או מ-Amazon RDS.

כדי להכין קטגוריית אחסון להעברה, מבצעים את השלבים הבאים:

  1. יוצרים קטגוריה. חשוב להשתמש באותו אזור שבו אתם מתכוונים ליצור את מכונת היעד של Cloud SQL ל-SQL Server.

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

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

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

    • תיקיית מסד הנתונים צריכה להכיל לפחות שתי תיקיות: full לקובץ הגיבוי המלא, ו-log לקובצי הגיבוי של יומן העסקאות, שאותם תעלו מאוחר יותר לשלב הטעינה המצטברת.

    • תיקיית מסד הנתונים יכולה להכיל גם תיקיית diff אופציונלית לקובץ הגיבוי הדיפרנציאלי.

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

    לדוגמה, אם אתם משתמשים בקובץ גיבוי מלא אחד, שימו אותו ישירות בתיקייה full. אותו כלל חל על קובץ הגיבוי הדיפרנציאלי:

    Cloud Storage bucket root/
    |- my-business-database/
    |  |- full/
    |  |  |- full_backup_file
    |  |- diff/
    |  |  |- diff_backup_file
    |  |- log/
    |  |  |- transaction_log_file
    |- my-other-database/
    |  |- full/
    |  |  |- full_backup_file
    |  |- diff/
    |  |  |- diff_backup_file
    |  |- log/
    |  |  |- transaction_log_file
    

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

    Cloud Storage bucket root/
    |- my-business-database/
    |  |- full/
    |  |  |- 1712649600/
    |  |  |  |- my_full_backup_file_stripe1
    |  |  |  |- my_full_backup_file_stripe2
    |  |- diff/
    |  |  |- 1706967833/
    |  |  |  |- firstDiffStripe.bak
    |  |  |  |- other_diff_stripe.diff
    |  |- log/
    |  |  |- transaction_log_file
    |- my-other-database/
    |  |- full/
    |  |  |- 1715250742/
    |  |  |  |- my_full_backup_file_stripe1
    |  |  |  |- my_full_backup_file_stripe2
    |  |- diff/
    |  |  |- 1706967833/
    |  |  |  |- firstDiffStripe.bak
    |  |  |  |- other_diff_stripe.diff
    |  |- log/
    |  |  |- transaction_log_file
    

    בדוגמאות האלה, Database Migration Service יוצר שני מסדי נתונים במכונה של Cloud SQL ביעד: my-business-database ו-my-other-database. כל מסד נתונים מאוכלס בנתונים שנשלפים מהתיקיות הנפרדות שלו: full,‏ diff ו-log.

    אפשר לשלב בין קובץ יחיד לבין קבצים מפוצלים בגיבויים מלאים ודיפרנציאליים. קבצי גיבוי דיפרנציאלי הם אופציונליים, אז אפשר גם להשאיר את התיקייה diff ריקה:

    Cloud Storage bucket root/
    |- my-business-database/
    |  |- full/
    |  |  |- full_backup_file
    |  |- diff/
    |  |  |- 1706967833/
    |  |  |  |- firstDiffStripe.bak
    |  |  |  |- other_diff_stripe.diff
    |  |- log/
    |  |  |- transaction_log_file
    |- my-other-database/
    |  |- full/
    |  |  |- 1712649600/
    |  |  |  |- my_full_backup_file_stripe1
    |  |  |  |- my_full_backup_file_stripe2
    |  |- diff/
    |  |  |- diff_backup_file
    |  |- log/
    |  |  |- transaction_log_file
    |- third-database/
    |  |- full/
    |  |  |- full_backup_file
    |  |- log/
    |  |  |- transaction_log_file
    

    בדוגמה הזו, ב-third-database לא משתמשים בקובץ גיבוי דיפרנציאלי להעברה, ולכן אין לו את התיקייה diff.

  3. מעלים את קובצי הגיבוי לתיקיות המתאימות:

    • מכניסים את קובץ הגיבוי המלא לתיקייה full.
    • שמים את קובץ הגיבוי הדיפרנציאלי בתיקייה diff.
    • מכניסים את קובצי יומן העסקאות לתיקייה log.

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

מה השלב הבא?