Os conectores do Cloud SQL são bibliotecas que fornecem criptografia e autorização com base em Identity and Access Management (IAM) ao se conectar a uma instância do Cloud SQL. Não é possível fornecer um caminho de rede para uma instância do Cloud SQL caso ainda não exista uma.
Outras maneiras de se conectar a uma instância do Cloud SQL incluem o uso de um cliente de banco de dados ou o proxy do Cloud SQL Auth. Consulte a página Sobre opções de conexão para mais informações sobre como se conectar a uma instância do Cloud SQL.
Nesta página, você conhecerá os seguintes conectores do Cloud SQL:
- O conector Java do Cloud SQL
- O conector Python do Cloud SQL (aberto no Colab)
- Conector do Cloud SQL para Go
- Conector do Cloud SQL para Node.js
Benefícios
O uso de um conector do Cloud SQL oferece os seguintes benefícios:
- Autorização do IAM: usa permissões de IAM para controlar quem ou o que pode se conectar às instâncias do Cloud SQL.
- Conveniência: remove o requisito para gerenciar certificados SSL, configurar regras de firewall ou ativar redes autorizadas.
Antes de começar
- Ative a API Cloud SQL Admin.
- Crie uma instância do Cloud SQL, incluindo a configuração do usuário padrão.
Para mais informações sobre como criar instâncias, consulte Criar instâncias.
Para mais informações sobre como configurar o usuário padrão, consulte Definir a senha da conta de usuário padrão.
- Configurou os papéis e permissões necessários para se conectar a uma instância do Cloud SQL.
Configuração
Java
O conector Java do Cloud SQL é uma biblioteca que fornece autorização e criptografia baseadas em IAM ao se conectar a uma instância do Cloud SQL. Ela não pode fornecer um caminho de rede para uma instância do Cloud SQL se ainda não houver um.
Instalação
Para instruções sobre como criar e usar os drivers para JDBC e R2DBC com o conector Java do Cloud SQL, consulte os seguintes links:
Para exemplos dessa biblioteca que está sendo usada no contexto de um aplicativo, confira estes aplicativos de amostra.
Autenticação
Essa biblioteca usa o Application Default Credentials para autenticar a conexão com o servidor do Cloud SQL.
Para ativar as credenciais localmente, use o seguinte comando do gcloud:
gcloud auth application-default login
Conectar-se com o IntelliJ
Para conectar o IntelliJ à instância do Cloud SQL, você precisará adicionar a biblioteca como um jar com dependências na seção Outros arquivos da página de configurações do driver. Por exemplo, fat jars pré-criados podem ser encontrados na página Versões do conector Java do Cloud SQL para essa finalidade.
Python
O conector do Cloud SQL para Python é uma biblioteca que pode ser usada com um driver de banco de dados para permitir que usuários com permissões suficientes se conectem a um banco de dados do Cloud SQL sem precisar incluir IPs manualmente ou gerenciar certificados SSL.
Para ver exemplos interativos do uso do conector Python do Cloud SQL, abra o notebook do conector Python do Cloud SQL.
O driver compatível com o MySQL é pymysql.
Instalação
Para instalar a versão mais recente do conector do Python para Cloud SQL, use o comando pip install
e especifique o driver pymysql
para seu banco de dados:
pip install "cloud-sql-python-connector[pymysql]"
Autenticação
Essa biblioteca usa o Application Default Credentials para autenticar a conexão com o servidor do Cloud SQL.
Para ativar as credenciais localmente, use o seguinte comando do gcloud:
gcloud auth application-default login
Go
O conector do Cloud SQL para Go é projetado para uso com essa linguagem. Para melhorar a segurança, esse conector usa criptografia TLS 1.3 robusta e autenticada manualmente entre o conector do cliente e o proxy do lado do servidor, independentemente do protocolo do banco de dados.
Instalação
É possível instalar este repositório com go get
:
go get cloud.google.com/go/cloudsqlconn
Node.js
O conector para Node.js é uma biblioteca projetada para uso com o ambiente de execução Node.js, que permite a conexão segura com sua instância do Cloud SQL.
Instalação
É possível instalar a biblioteca com npm install
:
npm install @google-cloud/cloud-sql-connector
Uso
Java
Para conferir esse snippet no contexto de um aplicativo da Web, consulte o README no GitHub.
Python
Consulte Como usar esse conector e veja instruções detalhadas sobre como usar a biblioteca. Veja um exemplo de código de teste de conexão no GitHub.
Go
Consulte Uso para ver instruções detalhadas sobre como usar a biblioteca. Veja um exemplo de código de teste de conexão no GitHub.
Node.js
Para instruções detalhadas sobre como usar a biblioteca, consulte Uso.
Resolver problemas
Versões do driver
Verifique se você está usando a versão mais recente dos conectores do Cloud SQL e do driver do banco de dados para evitar incompatibilidades. Algumas versões mais antigas dos drivers não são compatíveis.
Caminhos de conexão
Os conectores do Cloud SQL fornecem autorização para conexões, mas não fornecem novos caminhos para a conectividade. Por exemplo, para se conectar a uma instância do Cloud SQL usando um endereço IP privado, o aplicativo já precisa ter acesso à VPC.
Depurar problemas de conexão
Para receber mais ajuda com problemas de conexão, consulte as páginas Resolver problemas e Depurar problemas de conexão.
A seguir
- Consulte a página inicial do conector Java do Cloud SQL no GitHub.
- Consulte a página inicial do conector Python do Cloud SQL no GitHub.
- Saiba mais sobre o proxy do Cloud SQL Auth.
- Saiba mais sobre IAM.
- Conheça as opções de suporte.