Der Cloud SQL Connector für Java ist eine Bibliothek, die IAM-basierte Autorisierung und Verschlüsselung beim Herstellen einer Verbindung mit einer Cloud SQL-Instanz bereitstellt. Es kann kein Netzwerkpfad zu einer Cloud SQL-Instanz bereitgestellt werden, wenn noch keiner vorhanden ist. Weitere Informationen zum Herstellen einer Verbindung mit einer Cloud SQL-Instanz finden Sie auf der Seite „Verbindungsübersicht“.
Informationen zur spezifischen Nutzung Ihrer Datenbank-Engine und Ihres Treibers finden Sie auf den folgenden Seiten:
Herstellen einer Verbindung zu Cloud SQL über JDBC
Herstellen einer Verbindung zu Cloud SQL über R2DBC
Beispiele für die Verwendung dieser Bibliothek im Kontext einer Anwendung finden Sie in den Beispielanwendungen hier.
Diese Bibliothek verwendet die ADC-Strategie (Application Default Credentials) zum Auflösen von Anmeldeinformationen. Bitte lesen Sie diese Anweisungen, um zu erfahren, wie Sie Ihren ADC festlegen (Google Cloud-Anwendung vs. lokale Entwicklung, IAM-Benutzer vs. Dienstkonto-Anmeldeinformationen).
---
Um ein fettes JAR zu erstellen, das den JDBC-Treiber mit den Bundle-Socket-Factory-Abhängigkeiten enthält, können Sie den folgenden Maven-Befehl von dem Speicherort aus ausführen, der das Projekt pom.xml enthält:
mvn -P jar-with-dependencies clean package -DskipTests
Dadurch wird in jedem Modulverzeichnis ein Zielunterordner erstellt. In diesen Zielverzeichnissen finden Sie die JDBC-Treiberdateien.
Beispiel:
mysql-socket-factory-connector-j-8–1.8.0-jar-with-dependencies.jar postgres-socket-factory-1.8.0-jar-with-dependencies.jar
Der Java Connector unterstützt die optionale Debug-Protokollierung, um bei der Diagnose von Problemen bei der Aktualisierung des Zertifikats im Hintergrund zu helfen. Um es zu aktivieren, fügen Sie Folgendes zur Datei /src/main/resources/application.yml
hinzu:
logging.level.root=DEBUG
Der Cloud SQL-Proxy stellt Verbindungen zu Cloud SQL-Instanzen über Port 3307 her. Anwendungen, die durch eine Firewall geschützt sind, müssen möglicherweise so konfiguriert werden, dass sie ausgehende Verbindungen auf TCP-Port 3307 zulassen. Eine von einer Firewall blockierte Verbindung führt normalerweise zu einem Fehler, der einen Verbindungsfehler anzeigt ( z. B. com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure
).
Um IntelliJ mit Ihrer Cloud SQL-Instanz zu verbinden, müssen Sie diese Bibliothek als JAR mit Abhängigkeiten im Abschnitt „Zusätzliche Dateien“ auf der Seite mit den Treibereinstellungen hinzufügen. Vorgefertigte Fat Jars werden nicht mehr bereitgestellt (seit v1.14.0).
Hier sind einige Tipps zur Fehlerbehebung, um häufige Probleme zu beheben, die bei der Verwendung des Java Connectors auftreten:
Stellen Sie sicher, dass Sie die neueste Version des Cloud SQL Connectors und Ihres Datenbanktreibers verwenden, um Inkompatibilitäten zu vermeiden. Einige ältere Treiberversionen werden nicht unterstützt.
Der Java-Connector stellt die Autorisierung für Verbindungen bereit, stellt jedoch keine neuen Pfade zur Konnektivität bereit. Um beispielsweise über eine private IP-Adresse eine Verbindung zu einer Cloud SQL-Instanz herzustellen, muss Ihre Anwendung bereits über VPC-Zugriff verfügen.
Dieses Projekt verwendet semantische Versionierung und verwendet den folgenden Lebenszyklus hinsichtlich der Unterstützung einer Hauptversion:
Aktiv – Aktive Versionen erhalten alle neuen Funktionen und Sicherheitsfixes (die sonst keine bahnbrechende Änderung mit sich bringen würden). Neue Hauptversionen sind garantiert mindestens 1 Jahr lang „aktiv“. Veraltet – Veraltete Versionen erhalten weiterhin Sicherheits- und kritische Fehlerbehebungen, aber keine neuen Funktionen. Veraltete Versionen werden ein Jahr lang öffentlich unterstützt. Nicht unterstützt – Jede Hauptversion, die seit >=1 Jahr veraltet ist, gilt als öffentlich nicht unterstützt.
Wir testen und unterstützen mindestens jede öffentlich unterstützte LTS-JDK-Version. Änderungen in unterstützten Versionen gelten als geringfügige Änderungen und werden in den Versionshinweisen aufgeführt.
Dieses Projekt strebt eine minimale monatliche Veröffentlichungsfrequenz an. Wenn keine neuen Funktionen oder Korrekturen hinzugefügt wurden, wird eine neue PATCH-Version mit den neuesten Abhängigkeiten veröffentlicht.