Metadaten aus MySQL importieren

In diesem Dokument wird beschrieben, wie Sie Metadaten aus MySQL mit einem Knowledge Catalog-Connector (ehemals Dataplex Universal Catalog) in Knowledge Catalog importieren.

Dieser Connector unterstützt MySQL-Instanzen, die lokal, in Cloud SQL oder in anderen Cloud-Umgebungen gehostet werden.

Bevor Sie Metadaten aus MySQL importieren können, müssen Sie die folgenden Aufgaben ausführen:

  1. Erteilen Sie die erforderlichen Rollen und Berechtigungen.
  2. Aktivieren Sie die Knowledge Catalog API und die BigQuery Data Transfer Service API.
  3. Erfüllen Sie die MySQL-Voraussetzungen.
  4. Erfüllen Sie die Netzwerkvoraussetzungen.

IAM-Rollen und -Berechtigungen

Zum Erstellen und Verwalten eines Knowledge Catalog-Connector-Jobs benötigen Sie Identity and Access Management-Rollen (IAM), die Berechtigungen für Knowledge Catalog und BigQuery Data Transfer Service gewähren.

Bitten Sie Ihren Administrator, Ihnen die folgenden IAM-Rollen zuzuweisen, um die Berechtigungen zu erhalten, die Sie zum Konfigurieren eines MySQL-Connectors benötigen:

Außerdem müssen Sie dem Dienst-Agent für BigQuery Data Transfer Service (service-PROJECT_NUMBER@gcp-sa-bigquerydatatransfer.iam.gserviceaccount.com) die dataplex.entryGroups.import Berechtigung oder die Rolle „Dataplex-Eintragsgruppen importeur“ (roles/dataplex.entryGroupImporter) gewähren. Sie können diese Rolle entweder auf Projekt- oder auf Eintragsgruppenebene zuweisen.

Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff verwalten.

APIs aktivieren

Aktivieren Sie die Knowledge Catalog API und die BigQuery Data Transfer Service API.

APIs aktivieren

MySQL-Voraussetzungen

Achten Sie darauf, dass Sie die Voraussetzungen für MySQL-Übertragungen erfüllen. Weitere Informationen finden Sie unter MySQL-Voraussetzungen in der BigQuery Data Transfer Service-Dokumentation.

Zusätzlich zu den BigQuery Data Transfer Service-Voraussetzungen muss Ihre MySQL-Datenbank die folgenden Anforderungen für die Metadatenextraktion erfüllen:

  • Mindestversion:MySQL-Version 8.0 oder höher.
  • Mindestberechtigungen:Das Extraktionstool benötigt bestimmte Berechtigungen, um INFORMATION_SCHEMA abzufragen und Metadaten zu erfassen.

Diese Berechtigungen sorgen für die folgende Metadatenabdeckung:

  • Instanz- und Datenbankinformationen:Hostname, Port, Version und Schemakonfigurationen.
  • Tabellen und Spalten:Kernstruktur, Datentypen und betriebliche Metadaten wie Größen und Zeilenanzahlen.
  • Indizes und Partitionen:Sekundäre Indizes, Partitionierungsmethoden und Ausdrücke.
  • Ansichten:Virtuelle Tabellenstrukturen und Definitionen.
  • Routinen:Gespeicherte Prozeduren, Funktionen und ihre Parameter.
  • Beschränkungen:Detaillierte Beschränkungen für Primärschlüssel, Fremdschlüssel, eindeutige Werte und Prüfungen.
  • Trigger:Triggerdefinitionen und Ereigniszeitpunkt.

Führen Sie die folgenden SQL-Skripts aus, um diese Berechtigungen zu erteilen.

  1. Erstellen Sie den Nutzer:

    CREATE USER 'USERNAME'@'%'
    IDENTIFIED BY 'PASSWORD';
    
  2. Gewähren Sie Zugriff auf Metadaten. Sie können den Zugriff für eine einzelne Zieldatenbank oder für alle Datenbanken in der Instanz gewähren.

    So gewähren Sie Zugriff für eine einzelne Zieldatenbank oder ein einzelnes Schema:

    GRANT SELECT, SHOW VIEW, REFERENCES, EXECUTE, TRIGGER
    ON DATABASE_NAME.*
    TO 'USERNAME'@'%';
    

    Alternativ können Sie den Zugriff für alle Datenbanken in der Instanz gewähren:

    GRANT SELECT, SHOW VIEW, REFERENCES, EXECUTE, TRIGGER
    ON *.*
    TO 'USERNAME'@'%';
    
  3. Ermöglichen Sie dem Extraktionstool, alle verfügbaren Datenbanken in der Instanz aufzulisten:

    GRANT SHOW DATABASES ON *.* TO 'USERNAME'@'%';
    
  4. Übernehmen Sie die Änderung:

    FLUSH PRIVILEGES;
    

Ersetzen Sie Folgendes:

  • USERNAME: der Datenbanknutzer, den Sie konfigurieren möchten.
  • PASSWORD: das Passwort für den Datenbanknutzer.
  • DATABASE_NAME: der Name der MySQL-Datenbank, auf die Sie zugreifen möchten.

Netzwerkvoraussetzungen

Ein Netzwerkanhang für die Verbindung über Private Service Connect ist erforderlich, wenn Sie eine sichere Verbindung zu externen Datenbanken oder Cloud-Datenquellen von Drittanbietern mit einer privaten IP-Adresse in einem privaten Netzwerk herstellen, damit BigQuery Data Transfer Service auf Ihre Datenbank zugreifen kann.

Wenn Sie über eine öffentliche IP-Adresse eine Verbindung zu einer lokalen Umgebung oder einer in der Cloud gehosteten Instanz herstellen, ist kein Netzwerkanhang erforderlich.

MySQL-Connector konfigurieren

Konfigurieren Sie einen MySQL-Connector mit der Google Cloud Console oder der API.

Console

  1. Rufen Sie in der Google Cloud Console die Knowledge Catalog Seite auf.

    Zu Knowledge Catalog

  2. Klicken Sie im Navigationsmenü im Bereich Verwalten auf Connectors.

  3. Klicken Sie auf Verbindung hinzufügen.

  4. Wählen Sie in der Liste Connectors die Karte MySQL aus.

  5. Geben Sie im Abschnitt Details zur Datenquelle die Verbindungsdetails für Ihre MySQL-Instanz an:

    • Wählen Sie unter Netzwerkanhang bei Bedarf einen vorhandenen Netzwerkanhang aus oder erstellen Sie einen.
    • Geben Sie Host, Port, Datenbankname, Nutzername und Passwort ein.
    • Wenn Sie TLS verwenden, wählen Sie einen TLS-Modus aus und geben Sie ein vertrauenswürdiges PEM-Zertifikat an.
    • Klicken Sie unter Zu importierende MySQL-Metadatenobjekte auf Durchsuchen, um Objekte auszuwählen.
  6. Im Abschnitt Zieleinstellungen:

    • Klicken Sie auf Durchsuchen und wählen Sie eine vorhandene Knowledge Catalog-Eintragsgruppe aus, in der die importierten Metadaten gespeichert werden sollen, oder klicken Sie auf Neue Eintragsgruppe erstellen.
    • Wählen Sie aus, ob Sie Berechtigungen für die Eintragsgruppe jetzt oder später festlegen möchten. Legen Sie Berechtigungen fest, damit Nutzer die importierten Metadaten aufrufen können. Wenn Sie dem Dienst-Agent für BigQuery Data Transfer Service (service-PROJECT_NUMBER@gcp-sa-bigquerydatatransfer.iam.gserviceaccount.com) die Rolle „Dataplex-Eintragsgruppen importeur (roles/dataplex.entryGroupImporter)“ oder die dataplex.entryGroups.import Berechtigung nicht auf Projektebene gewährt haben, müssen Sie sie auf Eintragsgruppenebene gewähren.
  7. Geben Sie im Abschnitt Name der Connector-Konfiguration unter Anzeigename einen Namen für den Metadatenimportjob ein.

  8. Konfigurieren Sie im Abschnitt Zeitplanoptionen die Häufigkeit für den Metadatenimportjob. Wenn Sie On demand auswählen, wird der Job nur ausgeführt, wenn Sie ihn manuell auslösen.

  9. Optional: Konfigurieren Sie im Abschnitt Benachrichtigungsoptionen E-Mail- oder Pub/Sub-Benachrichtigungen für Jobfehler.

  10. Optional: Konfigurieren Sie im Abschnitt Erweiterte Optionen die Verschlüsselungseinstellungen. Wenn Sie einen vom Kunden verwalteten Verschlüsselungsschlüssel (Customer-Managed Encryption Key, CMEK) auswählen, wird der Schlüssel verwendet, um alle temporären Daten zu verschlüsseln, die vor dem Start der Knowledge Catalog-Metadatenimportjobs bereitgestellt werden. Er wird nicht verwendet, um die Metadaten in der Ziel-Eintragsgruppe von Knowledge Catalog zu verschlüsseln.

  11. Klicken Sie auf Speichern.

REST

Verwenden Sie die projects.locations.transferConfigs.create Methode. Konfigurieren Sie in der TransferConfig Ressource die folgenden Felder:

  • Setzen Sie das dataSourceId Feld auf "mysql".
  • Füllen Sie im Feld metadataDestination das dataplexConfiguration Objekt mit dem Ressourcenpfad der Ziel-Eintragsgruppe von Knowledge Catalog aus: projects/<var>PROJECT_ID</var>/locations/<var>LOCATION</var>/entryGroups/<var>ENTRY_GROUP_ID</var>

Nachdem Sie den Job erstellt haben, plant Knowledge Catalog die erste Ausführung gemäß Ihrer Konfiguration oder Sie können sie manuell starten.

Nächste Schritte