Utiliser le package Go SQL pour se connecter à Spanner Omni

Le package Go SQL est une interface générique autour des bases de données SQL (ou de type SQL) pour le langage de programmation Go. Le pilote Spanner pour le package Go SQL vous permet d'utiliser cette interface standard pour interagir avec vos bases de données Spanner.

Ce document explique comment configurer le pilote du package Go SQL pour vous connecter à Spanner Omni. Le pilote fonctionne avec Spanner Omni de la même manière qu'avec Spanner, et prend en charge les dialectes de base de données GoogleSQL et PostgreSQL.

Prérequis

Pour utiliser le package Go SQL afin de vous connecter à Spanner Omni, assurez-vous de respecter les exigences suivantes :

  • Utilisez la version 1.23.0 ou ultérieure du package Go SQL.

  • Ajoutez le module suivant à votre fichier go.mod pour utiliser le pilote dans votre application :

    go get github.com/googleapis/go-sql-spanner
    

Établir une connexion

Exécutez l'une des commandes suivantes pour établir une connexion avec Spanner Omni :

Communication en texte brut

Pour établir un canal de communication en texte brut, exécutez la commande suivante :

db, err := sql.Open("spanner", "ENDPOINT/databases/DATABASE_ID?use_plain_text=true;is_experimental_host=true")

Connexion TLS

Pour établir une connexion TLS sécurisée, exécutez la commande suivante :

db, err := sql.Open("spanner", "ENDPOINT/databases/DATABASE_ID?ca_cert_file=PATH_TO_CA_CRT;is_experimental_host=true")

Connexion mTLS

Pour établir une connexion TLS mutuelle (mTLS), exécutez la commande suivante :

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")