Das Go-SQL-Paket ist eine generische Schnittstelle für SQL- (oder SQL-ähnliche) Datenbanken für die Go-Programmiersprache. Mit dem Spanner-Treiber für das Go-SQL-Paket können Sie diese Standardschnittstelle verwenden, um mit Ihren Spanner-Datenbanken zu interagieren.
In diesem Dokument wird beschrieben, wie Sie den Go SQL-Paket-Treiber konfigurieren, um eine Verbindung zu Spanner Omni herzustellen. Der Treiber funktioniert mit Spanner Omni genauso wie mit Spanner und unterstützt sowohl GoogleSQL- als auch PostgreSQL-Datenbankdialekte.
Vorbereitung
Wenn Sie das Go-SQL-Paket verwenden möchten, um eine Verbindung zu Spanner Omni herzustellen, müssen die folgenden Anforderungen erfüllt sein:
Verwenden Sie Version 1.23.0 oder höher des Go-SQL-Pakets.
Fügen Sie der Datei
go.moddas folgende Modul hinzu, um den Treiber in Ihrer Anwendung zu verwenden:go get github.com/googleapis/go-sql-spanner
Verbindung herstellen
Führen Sie einen der folgenden Befehle aus, um eine Verbindung zu Spanner Omni herzustellen:
Klartextkommunikation
Führen Sie den folgenden Befehl aus, um einen Nur-Text-Kommunikationskanal einzurichten:
db, err := sql.Open("spanner", "ENDPOINT/databases/DATABASE_ID?use_plain_text=true;is_experimental_host=true")
TLS-Verbindung
Führen Sie den folgenden Befehl aus, um eine sichere TLS-Verbindung herzustellen:
db, err := sql.Open("spanner", "ENDPOINT/databases/DATABASE_ID?ca_cert_file=PATH_TO_CA_CRT;is_experimental_host=true")
mTLS-Verbindung
Führen Sie den folgenden Befehl aus, um eine Verbindung mit gegenseitiger TLS-Authentifizierung (mTLS) herzustellen:
db, err := sql.Open("spanner", "ENDPOINT/databases/DATABASE_ID?ca_cert_file=PATH_TO_CA_CRT;client_cert_file=PATH_TO_CLIENT_CRT;client_cert_key=PATH_TO_CLIENT_KEY;is_experimental_host=true")