Conectando ao Snowflake Postgres¶
Depois de criar uma instância do Snowflake Postgres, você poderá conectar-se a ela com qualquer cliente PostgreSQL, como psql ou DBeaver. Para estabelecer uma conexão, configure o cliente com:
O nome de host da instância. Trata-se do URL do host da máquina virtual.
Um nome de usuário. Quando você cria uma instância, o usuário
snowflake_adminé criado por padrão e projetado para acesso administrativo.O banco de dados Postgres ao qual deseja se conectar. Esse parâmetro é necessário para criar conexões Postgres. O banco de dados padrão é chamado
postgres.Uma senha para seu usuário.
Veja abaixo um exemplo desses detalhes de conexão usados com o cliente de linha de comando psql:
$ psql -h abcefg.snowflake.app -U snowflake_admin -d postgres
(o psql solicitará uma senha.)
Se você precisar especificar uma porta, use 5432:
$ psql -h abcefg.snowflake.app -U snowflake_admin -p 5432 -d postgres
Importante
SSL é necessário para se conectar às instâncias do Snowflake Postgres.
Sobre as cadeias de conexão¶
Ao criar uma instância do Postgres via Snowsight, o Snowflake Postgres fornece uma cadeia de conexão no formato de URI libpq para usar para conectar diretamente via psql ou para inserir na configuração do seu aplicativo.
Nota
A cadeia de conexão de um cluster permanece a mesma em todas as operações de gerenciamento de cluster, a menos que você redefina explicitamente o acesso para uma determinada função.
A cadeia de conexão como URL de banco de dados contém os seguintes parâmetros:
protocolo:
postgres://nome de usuário: Consulte Funções do Snowflake Postgres para obter mais detalhes
password
hostname
porta: 5432
database_name: o padrão é
postgres
Esses dados são usados para criar uma cadeia de conexão de URI com este formato:
postgresql://<username>:<password>@hostname:<port>/<database_name>
Se o ambiente do seu cliente não estiver configurado para impor conexões SSL, você poderá anexar ?sslmode=require ao URI:
postgresql://<username>:<password>@hostname:<port>/<database_name>?sslmode=require
O parâmetro sslmode aceitará valores diferentes indicando níveis distintos de criptografia SSL e verificação de certificado a ser usada. sslmode=require é o nível mínimo necessário para aplicar uma criptografia SSL. Para configurar seu cliente para executar uma verificação dos certificados SSL do servidor Snowflake Postgres, consulte Certificados SSL do Snowflake Postgres.
É possível especificar vários outros parâmetros de conexão de cliente em um URI de conexão da mesma forma que o sslmode foi especificado acima. Para obter uma lista completa, consulte a lista de parâmetros de conexão de URI na documentação do PostgreSQL.
Você também pode definir muitos desses parâmetros usando variáveis de ambiente reconhecidas por libpq. Por exemplo, o seguinte comando garante que a conexão psql seja feita com ?sslmode=require definido:
export PGSSLMODE=require
psql -h {hostname} -U {username} {dbname}
A definição de parâmetros de conexão de cliente por meio de variáveis de ambiente é útil ao configurar conexões para estruturas de aplicativo que, de outra forma, não fornecem opções de configuração para os parâmetros de conexão necessários.
Nota
Para aplicativos que usam drivers de banco de dados não baseados em
libpq, consulte a documentação desses outros drivers para saber as opções de parâmetros de configuração de cliente e o formato de especificação deles. Por exemplo, o driver JDBC do PostgreSQL fornece muitos parâmetros equivalentes aos que são fornecidos porlibpq, mas a respectiva especificação em URIs é um pouco diferente.