Der Database Migration Service verwendet Migrationsjobs, um Daten aus Ihren Quelldatenbanken in die Cloud SQL-Zielinstanz zu migrieren. Migrationsjobs helfen Ihnen dabei, die Quell- und Zielverbindungsprofile zu organisieren, Einstellungen für den Migrationsprozess zu definieren, den Fortschritt zu überwachen und den gesamten Vorgang sicher abzuschließen.
Zum Erstellen eines Migrationsjobs gehören die folgenden Aufgaben:
Quell- und Zielverbindungsprofile auswählen.
Auswählen, welche Datenbanken, die in Ihrer Quellinstanz erkannt wurden, migriert werden sollen.
Einen Migrationsjobtest durchführen, um sicherzustellen, dass der Database Migration Service eine Verbindung zu Ihrer Datenquelle und Ihrem Ziel herstellen kann.
Den Migrationsjob starten und den Fortschritt überwachen.
Den Migrationsjob hochstufen, wenn Sie Ihre Anwendung zur neuen Instanz wechseln möchten.
Hinweis
- Achten Sie darauf, dass die folgenden Anforderungen erfüllt sind:
- Sie haben einen Cloud Storage-Bucket für SQL Server-Sicherungsdateien.
- Ihre vollständige Sicherung und die Transaktionslogdateien wurden in den Cloud Storage-Bucket hochgeladen.
- Sie haben ein Quellverbindungsprofil für den Cloud Storage-Bucket.
- Sie haben Ihre Cloud SQL for SQL Server-Zielinstanz erstellt und konfiguriert und Sie haben ein Zielverbindungsprofil für die Instanz.
- Wählen Sie in der Google Cloud Console auf der Seite für die Projektauswahl ein -Projekt aus oder erstellen Sie eines Google Cloud Projekt.
- Aktivieren Sie die Database Migration Service API, die Compute Engine API, die Cloud Storage API und die Cloud SQL Admin API.
Erforderliche Rollen
Bitten Sie Ihren Administrator, Ihnen die folgenden IAM-Rollen für Ihr Projekt zuzuweisen, um die Berechtigungen zu erhalten, die Sie zum Erstellen von Migrationsjobs im Database Migration Service benötigen:
-
Administrator für die Datenbankmigration (
roles/datamigration.admin) -
Storage-Administrator (
roles/storage.admin) -
Cloud SQL-Bearbeiter (
roles/cloudsql.editor)
Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff verwalten.
Diese vordefinierten Rollen enthalten die Berechtigungen, die zum Ausführen homogener SQL Server-Migrationen mit dem Database Migration Service erforderlich sind. Erweitern Sie den Abschnitt Erforderliche Berechtigungen, um die erforderlichen Berechtigungen anzuzeigen:
Erforderliche Berechtigungen
Die folgenden Berechtigungen sind erforderlich, um homogene SQL Server Migrationen mit dem Database Migration Service auszuführen:
datamigration.*resourcemanager.projects.getresourcemanager.projects.listcloudsql.instances.createcloudsql.instances.getcloudsql.instances.listcloudsql.databases.getcloudsql.databases.deletecloudsql.operations.getcompute.machineTypes.listcompute.machineTypes.getcompute.projects.getstorage.buckets.createstorage.buckets.liststorage.objects.list
Sie können diese Berechtigungen auch mit benutzerdefinierten Rollen oder anderen vordefinierten Rollen erhalten.
Einstellungen definieren und Migrationsjob erstellen
So erstellen Sie einen Migrationsjob:
Console
- Rufen Sie in der Google Cloud Console die Migrationsjobs Seite auf.
- Klicken Sie auf Migrationsjob erstellen.
Die Seite des Assistenten zur Konfiguration von Migrationsjobs wird geöffnet. Dieser Assistent enthält mehrere Bereiche, die Sie durch die einzelnen Konfigurationsschritte führen.
Sie können die Erstellung eines Migrationsjobs jederzeit unterbrechen, indem Sie auf Speichern und beenden klicken. Alle bis dahin eingegebenen Daten werden in einem Migrationsjobentwurf gespeichert. Sie können den Migrationsjobentwurf später fertigstellen. Weitere Informationen finden Sie unter Migrationsjobentwurf aktualisieren.
- Geben Sie auf der Seite Erste Schritte die folgenden Informationen ein:
- Name des Migrationsjobs
Dies ist ein für Menschen lesbarer Name für Ihren Migrationsjob. Dieser Wert wird in der Google Cloud Console angezeigt.
- Migrationsjob-ID
Dies ist eine maschinenlesbare ID für Ihren Migrationsjob. Mit diesem Wert können Sie mit Migrationsjobs arbeiten, indem Sie Google Cloud CLI-Befehle oder die API des Database Migration Service verwenden.
- Wählen Sie in der Liste Quelldatenbankmodul die Option SQL Server oder Amazon RDS for SQL Server aus.
Die Felder Zieldatenbankmodul und Migrationsjobtyp werden automatisch ausgefüllt und können nicht geändert werden.
- Name des Migrationsjobs
- Klicken Sie auf Speichern und fortfahren.
- Führen Sie auf der Seite Quelle definieren folgende Schritte aus:
- Wählen Sie im Drop-down-Menü Ihr Quellverbindungsprofil aus.
Wenn Sie noch kein Quellverbindungsprofil haben, können Sie direkt im Drop-down-Menü auf Verbindungsprofil erstellen klicken. Weitere Informationen zum Erstellen von Verbindungsprofilen finden Sie unter Quellverbindungsprofil erstellen.
- Wenn Sie eine differenzielle Sicherungsdatei in Ihrer Migration verwenden möchten,
klicken Sie im Abschnitt Quellkonfigurationen anpassen das Kästchen
Differenzielle Sicherungen verwenden an.
Differenzielle Sicherungen sind nützlich, wenn Sie viele Daten replizieren müssen, die seit der vollständigen Sicherung in Ihrer Datenbank vorhanden sind, und Sie diese gesammelt verarbeiten möchten, anstatt mehrere Transaktionslogdateien hochzuladen. Weitere Informationen zu unterstützten Sicherungstypen finden Sie unter Unterstützte Sicherungsdateitypen.
Wenn Sie differenzielle Sicherungen verwenden, müssen Sie den
diffOrdner in Ihrem Cloud Storage-Bucket erstellen. Weitere Informationen finden Sie unter Sicherungsdateien in einem Cloud Storage-Bucket speichern. - Klicken Sie auf Speichern und fortfahren.
- Wählen Sie im Drop-down-Menü Ihr Quellverbindungsprofil aus.
- Wählen Sie auf der Seite Ziel definieren im Drop-down
Menü Ihr Zielverbindungsprofil aus.
Wenn Sie noch kein Zielverbindungsprofil haben, können Sie direkt im Drop-down-Menü auf Verbindungsprofil erstellen klicken. Weitere Informationen zum Erstellen von Verbindungsprofilen finden Sie unter Zielverbindungsprofil erstellen.
- Klicken Sie auf Speichern und fortfahren.
- Führen Sie auf der Seite Migrationsdatenbanken konfigurieren folgende Aktionen aus:
- Wählen Sie im Abschnitt Zu migrierende Datenbanken auswählen mit den
Kästchen aus, welche Datenbanken in diesen
Migrationsjob aufgenommen werden sollen. Diese Liste wird basierend auf den Ordnern erstellt, die Sie
im Cloud Storage-Bucket für Ihre Sicherungsdateien erstellt haben.
Sie können später Datenbanken zum Migrationsjob hinzufügen und daraus entfernen. Weitere Informationen finden Sie unter Datenbanken zu einem Migrationsjob hinzufügen oder daraus entfernen.
- Optional: Wenn Sie verschlüsselte Sicherungen verwenden, geben Sie die Verschlüsselung
schlüssel für Ihre Sicherungen an. Weitere Informationen zur Verwendung verschlüsselter
Sicherungen finden Sie unter
Verschlüsselte Sicherungen verwenden.
Führen Sie folgende Aktionen durch:
- Klicken Sie neben der Datenbank
die Sie für die Migration ausgewählt haben, auf Details bearbeiten.
Der Seitenbereich Verschlüsselung wird geöffnet.
- Wählen Sie Ihre Schlüssel in den Drop-down-Menüs Verschlüsselungsschlüssel aus.
- Geben Sie im Feld Passwort das Passwort für den Verschlüsselungsschlüssel ein.
- Klicken Sie auf Speichern und beenden.
- Klicken Sie neben der Datenbank
die Sie für die Migration ausgewählt haben, auf Details bearbeiten.
- Wählen Sie im Abschnitt Zu migrierende Datenbanken auswählen mit den
Kästchen aus, welche Datenbanken in diesen
Migrationsjob aufgenommen werden sollen. Diese Liste wird basierend auf den Ordnern erstellt, die Sie
im Cloud Storage-Bucket für Ihre Sicherungsdateien erstellt haben.
- Klicken Sie auf Speichern und fortfahren.
- Führen Sie auf der Seite Migrationsjob testen und erstellen folgende Aktionen aus:
- Optional: Klicken Sie auf Job testen , um zu prüfen, ob der Database Migration Service
alle Sicherungsdateien erfolgreich identifizieren und die erforderlichen Netzwerkverbindungen herstellen kann.
Wenn der Test fehlschlägt, können Sie die Fehlermeldungen lesen, um das Problem zu beheben und den Test noch einmal ausführen. Weitere Informationen zu möglichen Fehlern finden Sie unter Probleme diagnostizieren.
- Klicken Sie auf Job erstellen und starten , um die Migration zu starten.
Wenn Sie den Migrationsjob zu einem anderen Zeitpunkt ausführen möchten, klicken Sie auf Speichern und kehren Sie später zurück, um den Job auszuführen. Weitere Informationen finden Sie unter Migrationsjob starten.
- Optional: Klicken Sie auf Job testen , um zu prüfen, ob der Database Migration Service
alle Sicherungsdateien erfolgreich identifizieren und die erforderlichen Netzwerkverbindungen herstellen kann.
gcloud
In diesem Beispiel wird das optionale Flag --no-async verwendet, damit alle Vorgänge synchron ausgeführt werden. Das bedeutet, dass es einige Zeit dauern kann, bis einige Befehle abgeschlossen sind. Sie können das Flag --no-async überspringen, um Befehle asynchron auszuführen.
In diesem Fall müssen Sie mit dem
gcloud database-migration operations describe
Befehl prüfen, ob der Vorgang erfolgreich war.
Ersetzen Sie folgende Werte, bevor sie einen der Befehlsdaten verwenden:
- MIGRATION_JOB_ID durch eine maschinenlesbare ID für Ihren Migrationsjob. Mit diesem Wert können Sie mit Migrationsjobs arbeiten, indem Sie Google Cloud CLI-Befehle oder die API des Database Migration Service verwenden.
- REGION durch die Regions-ID, in der Sie den Migrationsjob speichern möchten.
- MIGRATION_JOB_NAME durch einen für Menschen lesbaren Namen für Ihren Migrationsjob. Dieser Wert wird im Database Migration Service in der Google Cloud Console angezeigt.
- SOURCE_CONNECTION_PROFILE_ID durch eine maschinenlesbare ID des Quellverbindungsprofils.
- DESTINATION_CONNECTION_PROFILE_ID durch eine maschinenlesbare ID des Zielverbindungsprofils.
- COMMA_SEPARATED_DATABASE_ID_LIST durch eine
durch Kommas getrennte Liste von Datenbank-IDs des SQL Server, den Sie aus Ihren Sicherungsdateien
migrieren möchten. Diese IDs müssen mit den Namen der
Datenbankordner in Cloud Storage übereinstimmen.
Beispiel:
--sqlserver-databases=my-business-database,my-other-database - Konfiguration der differenziellen Sicherung: Wenn Sie differenzielle Sicherungsdateien für die
Migration verwenden, fügen Sie dem Befehl das Flag
--sqlserver-diff-backuphinzu. Standardmäßig werden bei Migrationsjobs keine differenziellen Sicherungsdateien verwendet und der Ordnerdiffin Ihrem Cloud Storage-Bucket wird ignoriert.Weitere Informationen zu unterstützten Sicherungsdateien finden Sie unter Unterstützte Sicherungsdateitypen.
- Optional: MAPPING_FILE_FOR_PATHS_TO_ENCRYPTION_KEYS
durch den Pfad auf Ihrem lokalen Laufwerk zu einer Konfigurationsdatei, die Pfade zu Verschlüsselungsschlüsseln in Cloud Storage
mit den entsprechenden Datenbank-IDs zuordnet. Weitere Informationen zum Erstellen dieser Zuordnung
datei finden Sie unter
Verschlüsselte Sicherungen verwenden.
Beispiel:
--sqlserver-encrypted-databases=~/encryption-keys-mapping-file.json
Führen Sie folgenden Befehl aus:
Linux, macOS oder Cloud Shell
gcloud database-migration migration-jobs \ create MIGRATION_JOB_ID \ --no-async \ --region=REGION \ --display-name=MIGRATION_JOB_NAME \ --source=SOURCE_CONNECTION_PROFILE_ID \ --destination=DESTINATION_CONNECTION_PROFILE_ID \ --sqlserver-databases=COMMA_SEPARATED_DATABASE_ID_LIST \ --sqlserver-encrypted-databases=MAPPING_FILE_FOR_PATHS_TO_ENCRYPTION_KEYS \ --type=CONTINUOUS
Windows (PowerShell)
gcloud database-migration migration-jobs ` create MIGRATION_JOB_ID ` --no-async ` --region=REGION ` --display-name=MIGRATION_JOB_NAME ` --source=SOURCE_CONNECTION_PROFILE_ID ` --destination=DESTINATION_CONNECTION_PROFILE_ID ` --sqlserver-databases=COMMA_SEPARATED_DATABASE_ID_LIST ` --sqlserver-encrypted-databases=MAPPING_FILE_FOR_PATHS_TO_ENCRYPTION_KEYS ` --type=CONTINUOUS
Windows (cmd.exe)
gcloud database-migration migration-jobs ^ create MIGRATION_JOB_ID ^ --no-async ^ --region=REGION ^ --display-name=MIGRATION_JOB_NAME ^ --source=SOURCE_CONNECTION_PROFILE_ID ^ --destination=DESTINATION_CONNECTION_PROFILE_ID ^ --sqlserver-databases=COMMA_SEPARATED_DATABASE_ID_LIST ^ --sqlserver-encrypted-databases=MAPPING_FILE_FOR_PATHS_TO_ENCRYPTION_KEYS ^ --type=CONTINUOUS
Sie sollten eine Antwort ähnlich der folgenden erhalten:
Waiting for migration job [MIGRATION_JOB_ID] to be created with [OPERATION_ID] Waiting for operation [OPERATION_ID] to complete...done. Created migration job MIGRATION_JOB_ID [OPERATION_ID]
Der Migrationsjob wurde jetzt erstellt. Sie können mit dem Migrationsprozess fortfahren:
- Optional: Führen Sie einen Migrationsjobtest aus, um zu prüfen, ob der Database Migration Service alle erforderlichen Quell- und Zielentitäten erreichen kann.
- Starten Sie den Migrationsjob, um mit dem Verschieben Ihrer Daten zur Zielinstanz zu beginnen.