O pacote Go SQL é uma interface genérica em torno de bancos de dados SQL (ou semelhantes a SQL) para a linguagem de programação Go. O driver do Spanner para o pacote Go SQL permite usar essa interface padrão para interagir com os bancos de dados do Spanner.
Neste documento, descrevemos como configurar o driver do pacote SQL do Go para se conectar ao Spanner Omni. O driver funciona com o Spanner Omni da mesma forma que funciona com o Spanner, oferecendo suporte aos dialetos de banco de dados GoogleSQL e PostgreSQL.
Pré-requisitos
Para usar o pacote SQL do Go e se conectar ao Spanner Omni, verifique se você atende aos seguintes requisitos:
Use a versão 1.23.0 ou mais recente do pacote Go SQL.
Adicione o módulo a seguir ao arquivo
go.modpara usar o driver no seu aplicativo:go get github.com/googleapis/go-sql-spanner
Estabelecer uma conexão
Execute um dos seguintes comandos para estabelecer uma conexão com o Spanner Omni:
Comunicação em texto simples
Para estabelecer um canal de comunicação de texto simples, execute o seguinte comando:
db, err := sql.Open("spanner", "ENDPOINT/databases/DATABASE_ID?use_plain_text=true;is_experimental_host=true")
Conexão TLS
Para estabelecer uma conexão TLS segura, execute o seguinte comando:
db, err := sql.Open("spanner", "ENDPOINT/databases/DATABASE_ID?ca_cert_file=PATH_TO_CA_CRT;is_experimental_host=true")
Conexão mTLS
Para estabelecer uma conexão TLS mútua (mTLS), execute o seguinte comando:
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")