Snowflake Connector for MySQL-Merkmale

Wichtig

Vielen Dank für Ihr Interesse an Snowflake Connector für MySQL. Wir konzentrieren uns momentan auf eine Lösung der nächsten Generation, die ein deutlich verbessertes Benutzererlebnis bieten wird. Daher ist die Veröffentlichung dieses Konnektors mit dem Status „Allgemeine Verfügbarkeit“ derzeit nicht teil unserer Produkt-Roadmap. Sie können diesen Konnektor weiterhin als Vorschau-Feature verwenden. Beachten Sie aber, dass die Unterstützung von zukünftigen Fehlerkorrekturen und Verbesserungen nicht garantiert ist. Die neue Lösung ist als Openflow-Konnektor für MySQL verfügbar und umfasst bessere Performance, Anpassbarkeit und erweiterte Bereitstellungsoptionen.

Versionsunterstützung

Unsere allgemeine Richtlinie ist, dass der Snowflake Connector for MySQL alle offiziell unterstützten MySQL LTS-Versionen (Long-Term Support) unterstützt. Wir lassen die Unterstützung für ältere Versionen auslaufen, während Benutzer auf neuere Versionen umsteigen, und wird kündigen die Unterstützung für neue Versionen an, sobald sie veröffentlicht werden.

Der Konnektor unterstützt zwar eine Reihe von MySQL-Cloud-Varianten, die jedoch einige zusätzliche Einstellungen erfordern. Siehe Voraussetzungen für Snowflake Connector for MySQL-Datenquellen.

Die folgende Tabelle listet die getesteten und offiziell unterstützten Versionen auf.

Liste der offiziell unterstützten PostgreSQL-Versionen

8,0

8,4

Standard

Ja

Ja

AWS RDS

Ja

Amazon Aurora

Ja, als Version 3

GCP Cloud SQL

Ja

Ja

Azure Database

Nein

Servereinstellungen

Damit der Konnektor richtig funktioniert, müssen Sie die folgenden Einstellungen auf dem MySQL-Server überprüfen und anpassen

log_bin

Auf on setzen.

Dies aktiviert das binäre Protokoll, das Struktur- und Datenänderungen aufzeichnet.

binlog_format

Auf row setzen.

Der Konnektor unterstützt nur zeilenbasierte Replikation. MySQL 8.x-Versionen sind möglicherweise die letzten, die diese Einstellung unterstützen. Zukünftige Versionen werden nur noch die zeilenbasierte Replikation unterstützen.

Nicht anwendbar in GCP-Cloud-SQL, wo er auf den richtigen Wert festgelegt ist.

binlog_row_metadata

Auf full setzen.

Der Konnektor benötigt alle Zeilenmetadaten, um zu funktionieren, vor allem Spaltennamen und Primärschlüsselinformationen.

binlog_row_image

Auf full setzen.

Der Konnektor verlangt, dass alle Spalten in das binäre Protokoll geschrieben werden.

Nicht anwendbar in Amazon Aurora, wo er auf den richtigen Wert festgelegt ist.

binlog_row_value_options

Leave empty.

Diese Option wirkt sich nur auf JSON-Spalten aus, wo sie so eingestellt werden kann, dass nur die geänderten Teile von JSON-Dokumenten für UPDATE-Anweisungen berücksichtigt werden. Der Konnektor erfordert, dass vollständige Dokumente in das Binärprotokoll geschrieben werden.

binlog_expire_logs_seconds

Legen Sie den Wert auf mindestens einige Stunden oder länger fest, um sicherzustellen, dass der Datenbankagent die inkrementelle Replikation nach längeren Pausen oder Ausfallzeiten fortsetzen kann.

Wenn Sie die geplante Replikation verwenden, muss der Wert länger sein als der konfigurierte Zeitplan.

Das binäre Protokoll

Das binäre Protokoll von MySQL sammelt, sobald es aktiviert ist, Änderungen aus allen Tabellen einer bestimmten Instanz. Es gibt keine Möglichkeit, Tabellen oder Spalten auszuschließen. Der Konnektor empfängt daher Änderungen von allen Tabellen in der Datenbank, und der Datenbankagent verarbeitet Änderungen von Tabellen, die Sie für die Replikation konfigurieren, verwirft jedoch Änderungen in allen anderen Tabellen.

Jede Änderung muss zunächst vom Datenbankagenten geladen werden, und bei einigen besonders großen Änderungen, wie z. B. Aktualisierungen von BLOB-Spalten, auch wenn sie auf Tabellen erstellt werden, die nicht für die Replikation konfiguriert sind, kann dies zum Erschöpfen des Speichers des Datenbankagenten führen und ihn zum Absturz bringen. Wenn Sie besonders große Werte in Ihrer Datenbank speichern, stellen Sie sicher, dass Sie ausreichend Speicher für den Datenbankagenten und dessen Container konfigurieren.

Die Transaktionsgröße wird durch die Replikationslimits von MySQL auf weniger als 4 GB beschränkt. Transaktionen, die dieses Limit überschreiten, führen dazu, dass die Replikation für die betroffene Tabelle dauerhaft fehlschlägt.

Agentenauthentifizierung

Die einzige derzeit unterstützte Authentifizierungsmethode ist Benutzername und Kennwort. Jeder Datenquelleneintrag in der Konfiguration des Datenbankagenten enthält einen eigenen Satz von Anmeldeinformationen, der für jede Datenquelle unterschiedlich sein kann.

Die Benutzer des Datenbankagenten müssen über die folgenden Berechtigungen verfügen:

  • REPLICATION SLAVE für alle Schemas und Tabellen

  • REPLICATION CLIENT für alle Schemas und Tabellen

  • SELECT für alle Schemas und für alle Tabellen

Eine Anleitung zum Erstellen eines Benutzers für den Datenbankagenten finden Sie unter Erforderlichen Benutzer erstellen.