בדף הזה מוסבר איך להעביר את מסדי הנתונים של Cloud SQL ל-SQL Server למכונה של Cloud SQL ל-SQL Server באמצעות Database Migration Service. בתהליך ההעברה הזה, אתם יכולים להעביר את מסדי הנתונים למופע אחר של Cloud SQL ל-SQL Server באותו פרויקט ב- Google Cloud או בפרויקט אחר. במאמר מדריך להעברת נתונים ממקורות בניהול עצמי ומ-Amazon RDS מוסבר איך להעביר נתונים ממקורות בניהול עצמי או מ-Amazon RDS.
תהליך ההעברה ממקורות Cloud SQL ל-SQL Server כולל את המשימות הבאות:
הגדרת מכונת המקור של Cloud SQL ל-SQL Server, כדי ש-Database Migration Service יוכל לייצא באופן אוטומטי קובצי גיבוי לקטגוריה של Cloud Storage.
יצירת פרופיל חיבור למקור באמצעות Google Cloud CLI.
יצירת מכונת היעד של Cloud SQL ל-SQL Server.
יצירה והרצה של משימת ההעברה ב-Database Migration Service באמצעות Google Cloud CLI.
מעקב אחרי ההתקדמות של משימת ההעברה באמצעות תכונות התצפיתיות של Database Migration Service.
קידום משימת ההעברה אחרי שהנתונים הועברו במלואם.
עלויות
השירות Database Migration Service מוצע ללא תשלום נוסף להעברות הומוגניות ל-Cloud SQL. עם זאת, התמחור של Cloud SQL ו-Cloud Storage חל על חיובי רשת ועל ישויות של Cloud SQL ו-Cloud Storage שנוצרו למטרות העברה.
במסמך הזה משתמשים ברכיבים הבאים שלGoogle Cloud, והשימוש בהם כרוך בתשלום:
- Cloud Storage
- Cloud SQL
כדי להעריך את העלויות בהתאם לשימוש הצפוי, אתם יכולים להשתמש במחשבון העלויות.
לפני שמתחילים
- צריך לבדוק אם נתיב ההעברה הזה יכול לתמוך באופן מלא בתרחיש שלכם. מגבלות ידועות בשרת SQL
- חשבו באיזה אזור אתם רוצים ליצור את מסד הנתונים של היעד. Database Migration Service הוא מוצר אזורי לחלוטין, כלומר כל הישויות שקשורות להעברה (פרופילי החיבור של המקור והיעד, משימות ההעברה, מסדי הנתונים של היעד, קטגוריות האחסון) צריכות להישמר באזור אחד.
- בדף לבחירת הפרויקט במסוף Google Cloud , בוחרים Google Cloud פרויקט ב- או יוצרים אותו.
- מפעילים את ממשקי ה-API של Database Migration Service, Compute Engine, Cloud Storage ו-Cloud SQL Admin.
התפקידים הנדרשים
כדי לקבל את ההרשאות שנדרשות לביצוע העברות הומוגניות בין שני מופעים של Cloud SQL ל-SQL Server באמצעות Database Migration Service, בקשו מהאדמין להקצות את תפקידי ה-IAM הנדרשים ל חשבונות שמעורבים בתהליך ההעברה בפרויקטים הרלוונטיים.
בתרחיש הזה, אתם יכולים להעביר נתונים בין שני מכונות של Cloud SQL ל-SQL Server שנמצאות בפרויקטים שונים ב- Google Cloud . אם אתם רוצים להעביר בין מכונות באותו פרויקט, תנו את כל ההרשאות באותו פרויקט. במאמר ניהול הגישה תוכלו לקרוא מידע נוסף על מתן תפקידים.
תפקידים והרשאות בפרויקט המקור
מקצים את התפקידים הבאים לחשבונות ספציפיים בפרויקט ב- Google Cloud שבו נמצאת מכונת המקור של Cloud SQL ל-SQL Server:
- חשבון המשתמש שמבצע את ההעברה:
-
אדמין באחסון (
roles/storage.admin) -
Cloud SQL Editor (
roles/cloudsql.editor)
-
אדמין באחסון (
- חשבון השירות של Database Migration Service בפרויקט של מכונת היעד:
-
Cloud SQL Viewer (
roles/cloudsql.viewer) -
Cloud SQL Studio User (
roles/cloudsql.studioUser)
-
Cloud SQL Viewer (
התפקידים המוגדרים מראש האלה מכילים את ההרשאות שנדרשות כדי לבצע העברות הומוגניות של SQL Server באמצעות Database Migration Service. כדי לראות את ההרשאות הנדרשות, מרחיבים את הקטע Required permissions (source project):
ההרשאות הנדרשות (פרויקט המקור)
כדי לבצע העברות הומוגניות של SQL Server באמצעות Database Migration Service, נדרשות ההרשאות הבאות:
- חשבון המשתמש שמבצע את ההעברה:
resourcemanager.projects.getresourcemanager.projects.listcloudsql.operations.getcloudsql.instances.createcloudsql.instances.getcloudsql.instances.listcloudsql.instances.importcloudsql.databases.getcloudsql.databases.listcloudsql.databases.deletecompute.machineTypes.listcompute.machineTypes.getcompute.projects.getstorage.buckets.createstorage.buckets.list
- חשבון השירות של Database Migration Service בפרויקט היעד:
cloudsql.instances.exportcloudsql.instances.getcloudsql.instances.listcloudsql.instances.executeSql
יכול להיות שתוכלו לקבל את ההרשאות האלה גם באמצעות תפקידים בהתאמה אישית או תפקידים מוגדרים מראש אחרים.
תפקידים והרשאות בפרויקט היעד
מקצים את התפקידים הבאים לחשבונות ספציפיים בפרויקט ב- Google Cloud שבו נמצאת מכונת היעד של Cloud SQL ל-SQL Server:
- חשבון המשתמש שמבצע את ההעברה:
-
אדמין של העברת מסדי נתונים (
roles/datamigration.admin) -
אדמין באחסון (
roles/storage.admin) -
Cloud SQL Editor (
roles/cloudsql.editor)
-
אדמין של העברת מסדי נתונים (
- חשבון השירות של Database Migration Service בפרויקט של מכונת היעד:
-
אדמין של העברת מסדי נתונים (
roles/datamigration.admin) -
עריכת Cloud SQL (
roles/cloudsql.editor) -
Cloud SQL Studio User (
roles/cloudsql.studioUser)
-
אדמין של העברת מסדי נתונים (
- חשבון השירות של Cloud SQL שמשויך למכונה במקור:
Storage Object User (
roles/storage.objectUser)ההרשאה הזו נדרשת כדי לאפשר למכונה של Cloud SQL ל-SQL Server במקור לשמור קובצי גיבוי שיוצאו בקטגוריה של Cloud Storage שאתם יוצרים בפרויקט היעד.
התפקידים המוגדרים מראש האלה מכילים את ההרשאות שנדרשות כדי לבצע העברות הומוגניות של SQL Server באמצעות Database Migration Service. כדי לראות את ההרשאות הנדרשות, מרחיבים את הקטע Required permissions (destination project):
הרשאות נדרשות (פרויקט היעד)
כדי לבצע העברות הומוגניות של SQL Server באמצעות Database Migration Service, נדרשות ההרשאות הבאות:
- חשבון המשתמש שמבצע את ההעברה:
datamigration.*resourcemanager.projects.getresourcemanager.projects.listcloudsql.operations.getcloudsql.instances.createcloudsql.instances.getcloudsql.instances.listcloudsql.instances.importcloudsql.databases.getcloudsql.databases.listcloudsql.databases.deletecompute.machineTypes.listcompute.machineTypes.getcompute.projects.getstorage.buckets.createstorage.buckets.list
- חשבון השירות של Database Migration Service:
datamigration.*resourcemanager.projects.getresourcemanager.projects.listcloudsql.instances.createcloudsql.instances.getcloudsql.instances.listcloudsql.instances.executeSqlstorage.objects.createstorage.objects.list
- חשבון השירות של Cloud SQL שמשויך למכונה במקור:
storage.objects.createstorage.objects.liststorage.objects.get
יכול להיות שתוכלו לקבל את ההרשאות האלה גם באמצעות תפקידים בהתאמה אישית או תפקידים מוגדרים מראש אחרים.
הכנת מכונת המקור ב-Cloud SQL
יוצרים קטגוריה של Cloud Storage בפרויקט היעד ב-Google Cloud . הקטגוריה הזו משמשת לאחסון קובצי יומן של גיבויים שיוצאו ממכונת המקור של Cloud SQL ל-SQL Server.
- מומלץ להגדיר תקופת שמירת נתונים של בין
14ל-30ימים לקובצי הגיבוי האלה. - כדי לכתוב את קובצי הגיבוי לקטגוריה הזו, חשבון השירות של Cloud SQL שמשויך למכונה במקור צריך את תפקיד ה-IAM משתמש באובייקטים של אחסון (
roles/storage.objectUser). מידע נוסף על ההרשאות לתהליך ההעברה הזה מופיע בקטע התפקידים הנדרשים.
- מומלץ להגדיר תקופת שמירת נתונים של בין
יוצרים פרופיל חיבור למקור במכונה של Cloud SQL ל-SQL Server.
הכנת מכונת היעד של Cloud SQL ל-SQL Server
כדי להגדיר את מכונת היעד ב-Cloud SQL:
יוצרים ומגדירים את מכונת היעד של Cloud SQL ל-SQL Server. חשוב לוודא שאתם משתמשים במשאבי מחשוב וזיכרון שמספיקים לצורכי ההעברה.
יוצרים פרופיל חיבור ליעד למכונה של Cloud SQL.
יצירה והפעלה של משימת ההעברה
כשמתחילים את משימת ההעברה, מסדי הנתונים של Cloud SQL ל-SQL Server ביעד נכנסים למצב שחזור (recovery), שבו הם מנוהלים באופן מלא על ידי Database Migration Service. אחרי שכל הנתונים יועברו, תוכלו לקדם את המכונה ביעד. אחרי שהמכונה ביעד מקודמת, כל מסדי הנתונים במכונה הזו הופכים לפעילים באופן מלא. אתם גם מקבלים גישת כתיבה מלאה למסדי הנתונים האלה.
סיום ההעברה
כשתחליטו להעביר את האפליקציה למכונה החדשה של Cloud SQL ל-SQL Server, בצעו את השלבים הבאים כדי להשלים את ההעברה:
- עוצרים את כל פעולות הכתיבה במסדי הנתונים של המקור. אפשר להעביר אותם למצב קריאה בלבד כדי לשמור על הפונקציונליות התפעולית.
- קידום משימת ההעברה.
- (אופציונלי) בודקים את נתוני ההעברה כדי לוודא שהם מלאים.